본문 바로가기
반응형

Web Programing!/Mssql25

mssql에서 문자형으로 지정된 데이터를 날짜형으로 변환하는 방법 mssql에서 강제로 datetime의 값을 변경하고자 할때 사용. 문자형으로 된 date값을 다시 datetime 속성으로 변형해서 DATA 넣기 declare @Time varchar(40) set @Time = '2008-07-28 오후 11:54:28' select convert(datetime, convert(varchar(10), left(@Time, 10)) + ' ' + case when substring(@Time, 12, 2) = '오전' then substring(@Time, 15,2) else convert(varchar(2), convert(int, (substring(@Time, 15,2))) + 12) end + right(@Time, 6)) 2011. 8. 5.
[MSSQL] YYYYMMDDHHMISS형태의 날짜 String 을 Datetime으로 바꾸기 1. mssql 에서 convert를 이용하여 20080420080000(YYYYMMDDHHMISS)의 날짜 스트링을 datetime 형식으로 변환하기 select convert(datetime,'20080420 08:00:00') => 20080420 08:00:00 형식은 convert 함수에서 문자를 날짜로 자동으로 변환해 준다. => 따라서 20080420080000 => 20080420 08:00:00 형식으로 변경하면 된다. select substring('20080420080000',1,8) + ' ' + substring('20080420080000',9,2) + ':' + substring('20080420080000',11,2) + ':' +substring('20080420080000.. 2011. 8. 1.
[MSSQL] dateadd함수 형식 dateadd(날짜형식(yy,mm.dd),숫자,날짜) select dateadd(mm,6,'2011-01-01') 결과값 2011-07-01 select dateadd(mm,6,'2011-01-10') 결과값 2011-07-10 이므로 해당일자의 만6개월후의 날짜를 구할 수있다. 예) 현재일 기준으로 나이가 만 20세 이상인 사람을 구하는 쿼리문은 select * from member where dateadd(yy,20,birthday) 2011. 8. 1.
[MSSQL] order by case / 임의의 데이터를 원하는 순서대로 정렬하여 뽑기 sql작업을 하다보면 desc 또는 asc 가 아닌 원하는 컨텐츠를 선정하고 그 컨텐츠들을 임의의 순서대로 정렬하여 리스팅 하고 싶을때가 있다.그때 사용하는 방법이 order by case 이다 . 아래는 사용 예이니 잘 살펴보고 적용 하기 바란다. select testvalue from test orderby case when testvalue = XXX then 1 when testvalue =YYY then 2 end 위의 내용에서 숫자 값은 이름을 바꾼다거나 하는것이 아니라 가중치를 정해주는 것이다. 숫자가 낮을수록 먼저 출력 된다. 위와 같은 경우는 XXX,YYY 순서대로 출력이 되겠다. 정말 간단하고 실용적인 방법^^ 2011. 7. 7.
반응형