DB

MSSQL 날짜관련 함수

적외선 2012. 12. 11. 14:39

날짜 관련 함수입니다.
  
          
  2.1.1 GETDATE() 함수 

          시스템의 날짜를 리턴합니다. 
          
        SELECT GETDATE()
        2002-05-24 오전 10:51:05

        SELECT GETDATE()+100
        2002-09-01 오전 10:51:05



  2.1.2 CONVERT() 함수 
  
          결과값의 데이타 타입을 변환시킵니다.
          
        SELECT CONVERT(varchar(30), GETDATE(),100)
        May 24 2002 10:51AM

        SELECT CONVERT(varchar(30), GETDATE(),101)
        05/24/2002

        SELECT CONVERT(varchar(30), GETDATE(),102)
        2002.05.24

        SELECT CONVERT(varchar(30), GETDATE(),103)
        24/05/2002

        SELECT CONVERT(varchar(30), GETDATE(),104)
        24.05.2002

        SELECT CONVERT(varchar(30), GETDATE(),105)
        24-05-2002

        SELECT CONVERT(varchar(30), GETDATE(),106)
        24 May 2002

        SELECT CONVERT(varchar(30), GETDATE(),107)
        May 24, 2002

        SELECT CONVERT(varchar(30), GETDATE(),108)
        10:51:05

        SELECT CONVERT(varchar(30), GETDATE(),109)
        May 24 2002 10:51:05:140AM

        SELECT CONVERT(varchar(30), GETDATE(),110)
        05-24-2002

        SELECT CONVERT(varchar(30), GETDATE(),111)
        2002/05/24

        SELECT CONVERT(varchar(30), GETDATE(),112)
        20020524

        SELECT CONVERT(varchar(30), GETDATE(),113)
        24 May 2002 10:51:05:160

        SELECT CONVERT(varchar(30), GETDATE(),114)
        10:51:05:160



  2.1.3 DATEPART() 함수 

        날짜에서 지정한 날자형식부분만 추출해줍니다        
        형식: DATEPART(날짜형식, 날짜)
        
        SELECT DATEPART(yy, GETDATE())
        2002

        SELECT DATEPART(mm, GETDATE())
        5

        SELECT DATEPART(dd, GETDATE())
        24

        SELECT DATEPART(hour, GETDATE())
        10

        SELECT DATEPART(mi, GETDATE())
        51

        SELECT DATEPART(ss, GETDATE())
        5

        SELECT DATEPART(dw, GETDATE())
        6


        년/월/일/시/분/초/요일을 숫자로  보여준 예제입니다. 

  2.1.4 YEAR() , MONTH() , DAY() 함수         
          
          해당 년,월,일을 각각 뽑아줍니다. 
          형식: YEAR(날짜) , MONTH(날짜) , DAY(날짜)

        SELECT YEAR(GETDATE())
        2002

        SELECT MONTH(GETDATE())
        5

        SELECT DAY(GETDATE())
        24



  2.1.5 DATEADD() 함수         
  
          
          DATEADD함수는 날짜에 지정한 만큼을 더합니다.
        형식: DATEADD(날짜형식, 더할 값, 날짜)


        SELECT DATEADD(mm,20,GETDATE())
        2004-01-24 오전 10:51:05


        현재날짜에 월에 20을 더한 날짜를 출력하라.
         
        SELECT DATEADD(dd,100,GETDATE())
        2002-09-01 오전 10:51:05


        오늘부터 100일 후의 날짜를 출력하라.
        
  2.1.6 DATEDIFF() 함수         
  
        DATEDIFF함수는 두 날짜사이의 날짜형식에 지정된 부분을 돌려줍니다.
        형식: DATEDIFF(날짜형식, 시작 날자, 끝 날짜)


        SELECT DATEDIFF(dd,GETDATE(),'3000.1.1')
        364369


        현재날짜와 3000.1.1일 사이의 일수는 얼마일까.??
        
        SELECT DATEDIFF(MM,GETDATE(),'2003.1.1')
        8


        현재날짜와 2003.1.1일 사이의 월수는 얼마일까.??

  2.1.7 DATENAME() 함수         
  
        DATENAME함수는 지정한 날짜의 날자형식의 이름을 돌려줍니다.
        형식: DATENAME(날짜형식, 날짜)    

        SELECT DATENAME(mm,GETDATE())
        May

        SELECT DATENAME(dd,GETDATE())
        24

        SELECT DATENAME(dw,GETDATE())
        Friday


출처 - http://blog.naver.com/mf99/20025909059

[출처] MSSQL 날짜 처리 기법|작성자