이 글에서는 MSSQL에서 자주 사용하는 함수들을 정리한다.

🕒 날짜 변환 함수

CONVERT 함수는 데이터 형식을 다른 형식으로 바꿀 때 사용한다.

CONVERT(VARCHAR, P.PRCS_END_DT, 112) -- 날짜 형식으로 변환
style 값 결과 형식
1 MM/DD/YY 또는 DD/MM/YY
3 DD/MM/YY 또는 DD/MM/YYYY
4 DD.MM.YY 또는 DD.MM.YYYY
5 DD-MM-YY 또는 DD-MM-YYYY
10 MM-DD-YY 또는 MM-DD-YYYY
11 MM/DD/YY 또는 MM/DD/YYYY
19 YYYY.MM.DD HH:MI:SS
20 YYYY-MM-DD HH:MI:SS
21 YYYY.MM.DD HH:MI:SS
112 YYYYMMDD
120 YYYY-MM-DD HH:MI:SS (ISO 8601 형식)
126 YYYY-MM-DDTHH:MI:SS (ISO 8601 형식)
130 DD Month YYYY HH:MI:SS (영어 월 이름)

문자열을 날짜나 다른 타입으로 바꿀 때는 CAST를 사용한다.

CAST(#{endDate, jdbcType=VARCHAR} AS DATE)

날짜에 값을 더할 때는 DATEADD를 사용한다.

DATEADD(day, 3, GETDATE())

🧵 문자열 결합 함수

여러 행의 값을 하나의 문자열로 합칠 때는 STUFFFOR XML PATH 조합을 자주 사용한다.

SELECT a.birthday,
	STUFF((SELECT ',' + userId
			FROM [user]
			WHERE birthday = a.birthday
			FOR XML PATH('')), 1, 1, '') AS userIds
FROM [user] AS a
GROUP BY a.birthday

🧩 정리

  • CONVERT는 형식 변환에 사용한다.
  • CAST는 명시적인 타입 변환에 사용한다.
  • DATEADD는 날짜 계산에 사용한다.
  • STUFF는 문자열 조합에 활용할 수 있다.

연결문서

댓글남기기