본문 바로가기
  • [성공하는 개발자] - Developer

DataBase50

[MSSQL] 날짜, 시간 차이 일수 계산 (DATEDIFF) SQL Server에서 시작일자와 종료일자 사이의 일수 또는 시간, 분, 초 등의 차이를 계산할 때 DATEDIFF 함수를 사용한다. DATEDIFF 함수는 두 날짜를 비교하여 DATEPART 구분자에 따라서 차이를 계산하여 결과를 정수로 반환한다. ■ 날짜 차이 계산 SELECT DATEDIFF(DAY, '2021-06-12', '2021-07-13') AS [일차이] , DATEDIFF(MONTH, '2021-06-12', '2021-07-13') AS [개월차이] , DATEDIFF(YEAR, '2021-06-12', '2021-07-13') AS [년차이] DAY : 시작일자와 종료일자 사이의 일수를 반환 MONTH, YEAR : 월, 년이 바뀐 횟수를 반환 (주의: 30일을 1개월 또는 365일.. 2022. 7. 14.
[MSSQL] 날짜, 시간 더하기 빼기 (DATEADD) SQL Server에서는 날짜, 시간을 더하거나 빼기 위해서는 DATEADD 함수를 사용한다. 현재 날짜에서 하루를 빼서 전일 데이터를 조회할 수 있으며, 일자외에도 년 월 시간 등 기준일자에 원하는 기간 만큰 쉽게 더하거나 뺄수 있다. 날짜 빼기, 더하기 (년, 월, 일) ■ 일 계산 (DAY) SELECT DATEADD(DAY, -10, '2021-07-12') AS [10일전] , DATEADD(DAY, 10, '2021-07-12') AS [10일후] ■ 월 계산 (MONTH) SELECT DATEADD(MONTH, -1, '2021-07-12') AS [1개월전] , DATEADD(MONTH, 1, '2021-07-12') AS [1개월후] ■년 계산 (YEAR) SELECT DATEADD(HO.. 2022. 7. 11.
[Oracle] 문자열 구분자 행 분리 오라클 쿼리에서 칼럼에 구분자로 입력된 값을 행으로 분리(Split)하여 조회해야 할 상황이 종종 발생한다. 대부분 값을 조회하여 프로그래밍 코드에서 구분자를 분리하는 작업을 한다. 그러나 쿼리에서 미리 행으로 분리해야 하는 경우도 발생하므로 아래의 예제를 참고하면 된다. 부하가 많이 발생할 수 있으므로 데이터가 많은 경우는 권장하지 않는다. 예제 1 - Oracle 10g 이상 (정규식 함수 사용) SELECT REGEXP_SUBSTR(a.langList, '[^|]+', 1, LEVEL) AS split_result FROM (SELECT 'Java|Kotlin|Python|Swift' AS langList FROM dual) a CONNECT BY LEVEL 2022. 5. 24.
[Oracle] 오늘을 기준으로 해당 주(week)의 모든 일자 조회 오늘이 속한 주의 월요일부터 일요일까지 일자가 필요할때가 있다 select to_char(a.s_date, 'yyyy-mm-dd') monday , to_char(a.s_date+1, 'yyyy-mm-dd') tuesday , to_char(a.s_date+2, 'yyyy-mm-dd') wednesday , to_char(a.s_date+3, 'yyyy-mm-dd') thursday , to_char(a.s_date+4, 'yyyy-mm-dd') friday , to_char(a.s_date+5, 'yyyy-mm-dd') saturday , to_char(a.s_date+6, 'yyyy-mm-dd') sunday from ( select sysdate - (to_number(to_char(sysdate,.. 2022. 5. 24.