분류 전체보기 34

[ORACLE] ROW_NUMBER() 중복되는데이터는 하나로 처리하기 (그룹별로 순번을 지정하여 하나의 행만 추출)

ROW_NUMBER() OVER (PARTITION BY ~ 그룹별로 순번을 지정하여 하나의 행만 추출 ROW_NUMBER() 함수 SQL에서 사용되는 윈도우 함수(window function) 중 하나이다 윈도우 함수는 테이블의 행들에 대해 계산을 수행하고, 결과 집합에 추가적인 정보를 제공하는 특별한 함수이다 ROW_NUMBER() 함수는 각 행에 일련 번호를 할당된다 이 번호는 정렬 순서에 따라 할당되며, 일반적으로 정렬 기준은 ORDER BY 구문을 통해 지정된다 ex> 다음 쿼리는 고객별로(customer_id)별로 최근 주문 (order)의 인련번호를 확일 할 수 있다. SELECT order_id, customer_id, order_date, ROW_NUMBER() OVER( PARTITIO..

IT/ORACLE 2023.06.30

[ORALCE] NVL2 으로 NULL 값 처리하기

NVL2 NULL 값을 처리하는에 유용한 함수 NVL2함수는 첫번째 인수가 NULL이 아닌경우 두 번째 인수를 반환하고 첫번째 인수가 NULL인경우 세번째 인수를 반환한다 NVL2함수는 세개의 인수를 사용한다 expr1 : 컬럼 값 expr2 : expr1 이 null이 아닐경우 반환되는 값 expr3 : expr1 이 null일 경우 반환되는 값 예제를 보자 NVL2함수를 사용하여 각 직원의 급여(sal)가 null 인지 여부 확인 sal가 null이 아니면 "Salary exists" 라는 문자열 반환 sal가 null 이면 "Not Salary" 문자열을 반환 이를 통해 쿼리 또는 계산의 특정 요구 사항에 따라 동작 또는 null대체를 사용자가 지정할수 있다

IT/ORACLE 2023.05.16

[ORACLE] WHERE 1=1는 왜 사용하는거야?

WHERE 1=1 WHERE 1=1 는 항상 참인 조건이다 ("WHERE 1=1"조건은 상수 값 1을 항상 동일한 자신과 비교하기 때문에 참이다) 쿼리 디버깅과 쿼리를 동적으로 구성하거나 WHERE 절에 조건을 추가하는 프로세스를 단순화 하는 방법으로 사용된다. 이 조건을 쿼리에 포함하면 사실상 아무런 영향을 미치지 않는다. 넣어도 되고 안넣어되고 개발자 마음 그러나 초기 조건에 대해 AND또는 OR 연산자를 사용해서 추가 조건을 넣기 위한 시작점이라고 생각하면 될듯하다 WHERE 1=1로 시작하면 요구 사항에 따라 AND 또는 OR 를 사용해서 후속 조건을 쉽게 추가할수있다는 장점이 있다 쿼리 디버깅을 할 때 WHERE 1=1을 사용하면 조건을 수정하기가 쉬워서 사용한다 이렇게 사용할때랑 이렇게 사용하..

IT/ORACLE 2023.05.16

켄달 제너의 명상 수련법으로 유명한 Inner Child Work

켄달 제너의 Inner Child Work 명상은 내면의 어린 아이와 연결하고 치유하는 도움을 주는 명상이다. 켄달제너는 본인의 전담 심리상담사와 같이 테라피를 주기적으로 받는다고 합니다. 그 방법은 상담사와 같이 본인의 어린 나의 모습을 되돌아 보는 테라피인데 요즘 틱톡에서도 유행을 하는것이라고 합니다 만약에 자기 비하적인 행동을 평소에 취한다면 어린시절 나의 모습인 아이에게 하는 행동과 같은 것을 알아 차리라는 것이다. 우린 어린아이들에게 비하하는 말을 하거나 행동을 취하지 않는다. 어린아이에게는 칭찬과 격려 예쁜말만 해줘야한다. 즉 본인스스로가 자기 비하하고 본인을 미워하고 안좋을 말을 하는게 곧 어린시절 나에게 하는행동과 말이라고 가정하는것이다. 그러면 절대 비난할수 없으며 칭찬과 예쁜말을 마음껏..

소소 정보 2023.05.13

[MyBatis] 동적 태그 사용 <isEQual></isEQual> ,<if>,<choose>...

MyBatis MyBatis는 개발자가 SQL 쿼리 및 데이터베이스 작업을 Java 메서드 및 개체에 매핑할 수 있도록 하는 널리 사용되는 Java 기반 데이터 지속성 프레임워크입니다. MyBatis 동적 태그는 변화하는 요구 사항 및 데이터 조건에 적응할 수 있는 유연하고 사용자 정의 가능한 SQL 쿼리를 생성하기 위한 강력한 도구입니다. 이러한 태그는 동적 데이터 또는 사용자 입력을 기반으로 SQL 쿼리를 구성해야 하는 시나리오를 처리하는 데 유용합니다. MyBatis 동적 태그의 몇 가지 예는 다음과 같습니다. : 이 태그를 사용하면 매개변수 또는 변수 값에 따라 SQL 조각을 조건부로 포함하거나 제외할 수 있습니다. : 이 태그를 사용하면 여러 조건을 지정하고 어떤 조건이 참인지에 따라 다른 SQ..

IT/JAVA 2023.05.10

HttpServletResponse , response.setHeader() 사용법

HttpServletResponse 웹 서버에서 클라이언트로 다시 보내는 HTTP 응답을 나타내는 Java 인터페이스이다. Java 웹 애플리케이션에서 HttpServletResponse를 사용하려면 일반적으로 Spring MVC 또는 Servlet API와 같은 웹 프레임워크의 컨트롤러 메소드에 HttpServletResponse 유형의 매개변수를 추가하여 이에 대한 참조를 얻을 수 있다 response.setHeader("Content-Type", "text/html;charset=UTF-8"); "Content-Type" 이라는 HTTP 응답 헤더를 설정하여 응답 본문에 반환되는 콘텐트가 "text/html" 유형이고 UTF-8문자 인코딩으로 인코딩되도록 지정한다. 이 헤더는 일반적으로 반환되는 콘..

IT/SPRING 2023.05.08

오라클 원하는 위치의 문자열만 추출하기 SUBSTR 함수 사용하기

SUBSTR : 더 큰 문자열에서 하위 문자열을 추출하는데 사용되는 SQL함수이다 : 이 함수는 세가지 매개 변수를 사용한다 SUBSTR(string, start_position, length) 여기서 'string'은 하위 문자열을 추출할 원래 문자열이고. 'start_position'은 추출을 시작할 'string' 내의 위치이며, 'length'는 추출할 문자 수이다. ex> 이 쿼리는 SUBSTR함수를 사용하며 "Hello, world!" 문자열의 위치 1에서 시작하여 길이가 5인 하위 문자열을 추출한다 쿼리결과 : Hello start_position및 lenght에 음수 값을 사용할 수 도 있다 이 경우 카운팅은 문자열의 끝에서부터 시작된다 ex> 이 쿼리는 SUBSTR 함수를 사용하여 "He..

IT/ORACLE 2023.05.08

[ORACLE] NVL 함수 사용법 - null값을 기본값으로 대체 하기

NVL:oracle 에서 NVL은 NULL 값을 기본값으로 대체하는 데 사용되는 함수이다. NVL( 컬럼 , 값1) : 이 함수는 NULL이 아니면 "값1"을 반환한다 nvl 함수는 null값을 다른 지정된 값으로 바꾸는데 한개의 인수를 사용 첫번째 인수는 null에 대해 확인할 값이고 두번째 인수는 첫 번째 인수가 null 인경우 사용할 대체값이다. 예> 이 쿼리는 "employees" 에서 직원의 salary를 검색한다 그여 salary열에 NULL값이 있는 경우 NVL함수는 이를 기본값 0으로 바꾼다 예> 현재 날짜에서 고용 날짜를 빼 직원이 회사에 근무한 일수를 계산한다. 직원에게 고용 날짜가 없는 경우 (즉,null인 경우) nvl함수는 null을 0으로 바꾸고 해당 직원의 회사 근무 일수에 대..

IT/ORACLE 2023.05.08

[cron] spring 특정 시간에 작업 예약 하는 방법 : 시간 설정 @schedule(cron="")

[cron 시간 설정방법] @schedule(cron="") 구문은 특정 시간에 실행할 작업을 예약하기 위해 프로그래밍에 사용되는 코드 스니펫이다 "cron" 매개변수는 미리 정의된 구문을 기반으로 작업을 실행해야 하는 시간과 빈도를 지정하는 데 사용된다 식은 6개의 필드를 사용하여 초, 분, 시간, 일, 월 및 요일 값을 지정한다. cron :예약 빈도 및 타이밍을 정의 식은 6개의 필드를 사용하여 초, 분, 시간, 일, 월 및 요일 값을 지정 할 수 있다. cron = " * * * * * * " 6 자리 지정 가능 각 자리 마다 * 초(0-59), * 분(0-59), * 시간(0-23), * 일(1-31), * 월(1-12 또는 1월-12월), * 요일(0-7 또는 SUN-SAT, 여기서 0과 7은..

IT/SPRING 2023.05.05