| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 스프링
- 서비스레이어
- c:if
- @RequestMapping
- springjdbc
- @RequestParam
- .xml
- spring
- 바인딩변수
- 유효성검사
- 생성자주입
- springmvc
- produces
- Model
- @ResponseBody
- AOP
- after-throwing
- @Valid
- application.properties
- SpringBoot
- frontController
- 어노테이션
- PointCut
- 의존주입
- jointpoint
- gradle
- Java
- 비즈니스레이어
- @
- MVC
- Today
- Total
메모장
05-2 날짜 함수 본문
날짜 함수는 날짜나 시간 데이터 작업을 위한 다양한 기능을 제공한다.
- 서버의 현재 날짜 , 시간 반환 하기 : GETDATE, SYSDATETIME 함수
만약 현재 접속중인 데이터베이스 서버의 시간을 확인하려면 GETDATE, SYSDATETIME 함수를 사용한다.
차이점은 GETDATE -> 소수점 3자리 까지 , SYSDATETIME -> 소수점 7자리
기본 형식
SELECT GETDATE(), SYSDATETIME()
- 서버의 현재 UTC 날짜 , 시간 반환하기 : GETUTCDATE, SYSUTCDATETIME 함수
현재 접속한 데이터베이스 서버의 협정 세계시(UTC) 시간을 확인하려면 사용해야 한다.
기본 형식
SELECT GETUTCDATE(), SYSUTCDATETIME()
날짜 더하기,빼기 : DATEADD
날짜를 더하거나 빼려면 DATEADD 를 사용한다.
날짜형식(datepart), 숫자(year) , 더하거나 뺄 대상날짜(date) 를 인자로 받는다.
현재 날짜에서 연도를 1씩 가감
SELECT GETDATE() , DATEADD(YEAR, 1, GETDATE())
2023-06-25 10:00:00.000 , 2024-06-25 10:00:00.000
SELECT GETDATE() , DATEADD(YEAR, -1, GETDATE())
2023-06-25 10:00:00.000 , 2022-06-25 10:00:00.000
날짜 차이 구하기 : DATEDIFF
날짜 차이 반환: DATEDIFF 함수
DATEDIFF (datepart, startdate, enddate)
날짜 형식을 year로, 시작날짜를 '2019-12-31'로, 종료날짜를 '2021-01-01' 로 전달하면
시작날짜와 종료날짜 사이의 기간을 1년 단위로 반환한다.
SELECT DATEDIFF(year, '2019-12-31 23:59:59.9999999', '2021-01-01 00:00:00.0000000');
지정된 날짜 일부 반환하기 : DATEPART, DATENAME
DATEPART 함수와 DATENAME 함수는 지정된 날짜의 일부를 반환한다.
두 함수의 차이점은 DATEPART 함수는 반환값이 월요일 이라면 1과 같은 숫자를 , DATENAME함수는 반환값이 금요일이라면 금요일 그대로 실젯값을 반환한다는 것이다.
DATEPART 함수 사용
SELECT symbol, last_crawel_date,
DATEPART(year, last_crawel_date),
DATEPART(month, last_crawel_date),
DATEPART(day, last_crawel_date),
DATEPART(weekday, last_crawel_date),
FROM nasdaq_company
출력결과 : 6 6 6 3 6
------------------------------------------
DATENAME 함수 사용
SELECT symbol, last_crawel_date,
DATENAME(year, last_crawel_date),
DATENAME(month, last_crawel_date),
DATENAME(day, last_crawel_date),
DATENAME(weekday, last_crawel_date),
FROM nasdaq_company
출력결과 : 금요일 금요일 금요일 화요일 금요일
날짜에서 일, 월, 연도 가져오기 : DAY, MONTH, YEAR
큰 의미에서는 DATEPART 함수와 같지만 부분으로 사용하고 싶을때 요긴한 함수이다.
SELECT symbol, last_crawel_date,
YEAR(last_crawel_date),
MONTH(last_crawel_date),
DAY(last_crawel_date),
FROM nasdaq_company
날짜 자료형 또는 형태 변환하기 : CONVERT 함수
다양한 날짜 형태를 표현할 수 있다.
YYYY-MM-DD hh:mm:ss.sss 형태를 YY/MM/DD 형태로 표현하고자 각 날짜를 파트별로 잘라서 문자열로 변환한 다음 서로 연결 시키기
YYYY-MM-DD hh:mm:ss.sss 형태를 YY/MM/DD 형태로 표현하고자 각 날짜를 파트별로 잘라서
문자열로 변환한 다음 서로 연결 시키기
SELECT symbol, last_crawel_date,
CONVERT(nvarchar(10), year(last_crawel_date)) + '/' +
CONVERT(nvarchar(10), month(last_crawel_date)) + '/' +
CONVERT(nvarchar(10), day(last_crawel_date))
FROM nasdaq_company
출력결과 : 2021-11-05 00:00:00.000 -----> 2021/11/5
----------------------------------------------------------------
스타일 매개변수를 사용하면 이렇게 하지 않아도 2021/11/5 형태로 바꿀수 있다.
SELECT CONVERT(NVARCHAR(20), last_crawel_date, 111) FROM nasdaq_company
---> 2021/11/05
SELECT CONVERT(NVARCHAR(20), last_crawel_date, 112) FROM nasdaq_company
---> 20211105
'DB > [SQL 입문]' 카테고리의 다른 글
| 05-4 수학함수 (0) | 2024.04.11 |
|---|---|
| 05-3 집계함수 (0) | 2024.04.11 |
| 05-1 문자열 함수 (0) | 2024.04.11 |
| 04-3 공통 테이블 식 (0) | 2024.04.11 |
| 04-2 서브쿼리 (0) | 2024.04.11 |