Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 제이쿼리
- jquery
- Eclipse
- 공모주 청약 일정
- 자바스크립트
- 6월 공모주 청약 일정
- SQL
- MYSQL
- 오라클
- 맥
- codeigniter
- 자바
- css
- 주식 청약
- 리눅스
- Stock ipo
- JavaScript
- java
- IPO
- 공모주 청약
- Oracle
- Stock
- html
- 공모주
- php
- 주식 청약 일정
- 주식
- 7월 공모주 청약 일정
- 코드이그나이터
- linux
Archives
- Today
- Total
개발자의 끄적끄적
[MSSQL] 날짜함수(GETDATE,DATEADD,DATEPART,DATEDIFF) 사용법 & 예제 본문
728x90
반응형
[MSSQL] 날짜함수(GETDATE,DATEADD,DATEPART,DATEDIFF) 사용법 & 예제
GETDATE
GETDATE함수는 현재 컴퓨터에 설정되어있는 시스템 시간을 불러와주는 함수입니다.
2018-03-31 오전 01:40:30
위와같이 GETDATE()함수는 년월일은 물론이거니와 분,초 까지도 구해줍니다.
하지만 모든 사용자들이 위와같은 형식으로 사용하지는 않겠죠.
여기서 우리는 우리가 표시할 시간이나 날짜만 적절히 뽑아 올 수도 있고
날짜 형태를 바꿔서 출력할수도 있습니다.
사용법
--현재 날짜 출력--
SELECT GETDATE() AS 시스템일자
--현재 날짜의 연,월,일 출력--
SELECT
YEAR(GETDATE()) AS 년,
MONTH(GETDATE()) AS 월,
DAY(GETDATE()) AS 일
출력 포맷 변경
--YYYY/MM/DD--
Select Convert(varchar(10),Getdate(),111)
--YYYYMMDD--
Select Convert(varchar(10),Getdate(),112)
--HH:MM:SS--
Select Convert(varchar(8),Getdate(),108)
--HH:MM:SS:mmm--
Select Convert(varchar(12),Getdate(),114)
--HHMMSS--
Select Replace(Convert(varchar(8),Getdate(),108),':','')
--HHMMSSmmm--
Select Replace(Convert(varchar(12),Getdate(),114),':','')
--YYYY/MM/DD HH:MM:SS--
Select Replace(Convert(varchar(30),Getdate(),120),'-','/')
--YYYY/MM/DD HH:MM:SS--
Select Replace(Convert(varchar(30),Getdate(),121),'-','/')
--YYYY/MM/DD HH:MM:SS--
Select Convert(varchar(10),Getdate(),111) + Space(1) + Convert(varchar(8),Getdate(),108)
--YYYYMMDDHHMMSS--
Select Convert(varchar(10),Getdate(),112) + Replace(Convert(varchar(8),Getdate(),108),':','')
DATEADD
DATEADD함수는 날짜에 원하는 일수를 더해서 출력해주는 함수입니다.
100일뒤에는 몇일이다 이런것은 쉽게 계산하기 힘든데
DATEADD함수를 쓰면 이런것들을 편리하게 계산할 수 있습니다.
이 함수를 좀 더 응용하면 100일 뒤에는 무슨 요일이다 이렇게도 응용가능합니다.
사용법
--2개월 후 출력--
SELECT DATEADD(MM,2,GETDATE()) AS '2개월후'
--30일전 출력--
SELECT CONVERT(NVARCHAR(8),DATEADD(DAY,-30,'20180124'),112)AS '30일전'
--1달 뒤 요일계산
SELECT DATANAME(WEEKDAY,DATEADD(MM,1,GETDATE())) AS'요일계산'
DATEPART
DATEPART함수는 날짜에서 지정한 날짜형식의 부분만 출력해주는 함수입니다.
아주 다양하게 활용이 가능한 함수입니다.
사용법
--현재 년도 구하기
SELECT DATEPART(YEAR,GETDATE());
--현재 월 구하기--
SELECT DATEPART(MONTH,GETDATE())
--현재 일 구하기--
SELECT DATEPART(DAY,GETDATE())
--현재 분기 구하기--
SELECT DATEPART(QQ,GETDATE())
--올해의 몇번째 날인지 구하기--
SELECT DATEPART(DAYOFYEAR,GETDATE())
--올해의 몇째 주인지 구하기--
SELECT DATEPART(WEEK,GETDATE())
--이번주의 몇번째 날인지 구하기--
SELECT DATEPART(WEEKDAY,GETDATE())
--오늘이 무슨요일인지 구하기--
SELECT
CASE DATEPART(WEEKDAY, GETDATE())
WHEN '1' THEN '일요일'
WHEN '2' THEN '월요일'
WHEN '3' THEN '화요일'
WHEN '4' THEN '수요일'
WHEN '5' THEN '목요일'
WHEN '6' THEN '금요일'
ELSE '토요일'
END AS '요일'
DATEDIFF
DATEDIFF함수는 지정한 두 날자간의 간격을 계산해주는 함수입니다.
정해준 날짜형식에 맞춰 리턴값이 다르므로 적절하게 잘 설정해주셔야 합니다.
사용법
--지정일과의 현재와의 년도차이 계산--
SELECT DATEDIFF(YY,'2000-01-01',GETDATE())
--지정일과의 현재와의 월차이 계산--
SELECT DATEDIFF(MM,'2000-01-01',GETDATE())
--지정일과 현재와의 일차이 계산--
SELECT DATEDIFF(DD,'2000-01-01',GETDATE())
반응형
'개발 > sql' 카테고리의 다른 글
[sql] CUBRID Internals: 드라이버 커넥션 관리 [펌] (0) | 2020.07.12 |
---|---|
[MSSQL] 데이터 타입변환 (CONVERT,CAST) 사용법 & 예제 (0) | 2020.07.07 |
[MySQL] Command Line 으로 원격지에서 MySQL 접속하기 (0) | 2020.07.04 |
[MySQL] 서브쿼리 ( subquery ) [펌] (0) | 2020.06.28 |
[mysql] SELECT 결과값을 UPDATE하기 (0) | 2020.06.28 |
Comments