"데이터 변환 함수"
cast()
--cast로 float 적용하기
select avg( cast(sales as float) ) as [평균매출] from salesTbl;
--4064.28571428571
price를 int에서 varchar로 변경
select cast(price as varchar)as 가격 from salesTbl
convert()
select avg( convert(float,sales) ) as [평균매출] from salesTbl;
테이블의 나이컬럼을 int에서 char로 변환
select convert(nvarchar(10),age)+'세' as 나이 from my_table
테이블에서 날짜DTS 칼럼을 int에서 date로 변환
select convert(date,cubstring(dts,1,8))as 날짜 from my_table
select convert(varchar, getdate(), 120)
--결과 : 2014-12-12 19:21:36
select convert(varchar(10), getdate(), 120)
select CONVERT(date, GETDATE()); --2020-11-09
--결과 : 2014-12-12
select convert(varchar(16), getdate(), 120)
--결과 : 2014-12-12 19:21
[이외의 날짜 변환형식]
[이외의 날짜 변환형식]
select convert(varchar, getdate(), 100) --mon dd yyyy hh:miAM (or PM)
select convert(varchar, getdate(), 101) --mm/dd/yyyy
select convert(varchar, getdate(), 102) --yyyy.mm.dd
select convert(varchar, getdate(), 103) --dd/mm/yyyy
select convert(varchar, getdate(), 104) --dd.mm.yyyy
select convert(varchar, getdate(), 105) --dd-mm-yyyy
select convert(varchar, getdate(), 106) --dd mon yyyy
select convert(varchar, getdate(), 107) --Mon dd, yyyy
select convert(varchar, getdate(), 108) --hh:mm:ss
select convert(varchar, getdate(), 109) --mon dd yyyy hh:mi:ss:mmmAM (or PM)
select convert(varchar, getdate(), 110) --mm-dd-yyyy
select convert(varchar, getdate(), 111) --yyyy/mm/dd
select convert(varchar, getdate(), 112) --yyyymmdd
select convert(varchar, getdate(), 113) --mon yyyy hh:mi:ss:mmm (24h)
select convert(varchar, getdate(), 114) --hh:mi:ss:mmm (24h)
select convert(varchar, getdate(), 120) --yyyy-mm-dd hh:mi:ss (24h)
select convert(varchar, getdate(), 121) --yyyy-mm-dd hh:mi:ss.mmm (24h)
select convert(varchar, getdate(), 126) --yyyy-mm-ddThh:mi:ss.mmm
select convert(varchar, getdate(), 130) --dd mon yyyy hh:mi:ss:mmmAM
select convert(varchar, getdate(), 131) --dd/mm/yyyy hh:mi:ss:mmmAM
try_convert() -> 실패하면 NULL
select avg( try_convert(float, sales) ) as [평균매출] from salesTbl;
select avg( try_convert(float, goodsId) ) as [평균매출] from salesTbl; --NULL
parse()
select parse('2018년 10월 10일' as date);
--2018-10-10
try_parse() --> 실패하면 NULL
select try_parse('2018년 10월 10일' as date);
'Database > MSSQL work' 카테고리의 다른 글
sp_help (0) | 2020.11.09 |
---|---|
날짜, 기타 (0) | 2020.11.09 |
@myVar 변수선언, 할당, 추출 (0) | 2020.11.09 |
Merge (0) | 2020.11.09 |
UPDATE, DELETE (0) | 2020.11.09 |