관리 메뉴

웹개발자의 기지개

[MS-SQL] 날짜 기간검색 쿼리문1 [날짜관련 함수예제] 본문

SQL/MS-SQL

[MS-SQL] 날짜 기간검색 쿼리문1 [날짜관련 함수예제]

http://portfolio.wonpaper.net 2018. 11. 27. 07:28

실무에서 필요한 ASP 와 MS-SQL 의 날짜 관련된 쿼리문을 몇가지 정리해 본다.


  (*) 2011-12-05 부터 2011-12-07 까지 몇일간인가
  Print DATEDIFF(dd,'2011-12-05','2011-12-07') : 2
 
  (*) 2011-12-06 부터 5일전까지의 데이터
  select * from 테이블명 where work_date >= DATEADD(Day,-5,'2011-12-06')
 
  (*) 현재일자에서 100 일 추가
  select DATEADD(dd,100,getdate())
 
  '해당 달의 마지막날 구하기
  Function last_day(date1)
     Dim NowMonthDay, NextMonthDay, NowLastDay
 
     '이번 달 1일. 출력값: 2011-02-01
     NowMonthDay = Year(date1) &"-" &Right(("00" &Month(date1)),2) &"-01"
     '다음 달 1일. 출력값: 2011-03-01
     NextMonthDay = DateAdd("m", 1, NowMonthDay)
 
     '마지막 날 구하기. 출력값: 28
     NowLastDay = DateDiff("y", NowMonthDay, NextMonthDay)
 
     last_day = NowLastDay
  End Function
 
 
  '요일값 숫자로 얻기. 출력 예: 1(일요일), 2(월요일), … 7(토요일)
  weekDate = Weekday(Now())
 
  '요일값 그대로 얻기. 출력값: 월요일
  weekDate = WeekDayName(Weekday(Now()))
 
  '시간(혹은 날짜,월,분등) 차이값 얻기, 출력값:2 (2시간남았다)
  gap = DateDiff("h",now,"2012-09-15 14:20:22")
 
 
  '날짜의 차이값 구하기 (2012-01-02 에서 2012-01-27)
  Function dateGap(date1,date2)
     Dim a
     a = DateDiff("d",date1,date2) + 1
     dateGap = a
  End Function
 
 
  ' 요일명칭 정보 얻기 ( 월요일 )
  function dayGap(dateStr)
     dayGap = WeekDayName(Weekday(dateStr))
  End Function
 
  ' 지났는가 아직 안 지났는가? 시간으로 확인해 보자
  date1 = "2013-07-11 12:10:23"
  date2 = "2013-07-30 14:10:23"
 
  response.Write DateDiff("h",date1,date2)


Comments