[ASP]DATEDIFF 함수
nowday = day(date)
' nowday = 9
' 두달전은 무조건 안보인다..
if cint(datediff("m", cdate(objRs("date_sent")) , date())) >= 2 then
view_mode= "N"
' 지금달은 무조건 보인다..
elseif cint(datediff("m", cdate(objRs("date_sent")) , date())) = 0 then
view_mode= "Y"
' 한달전 것은 이번달 10일까지는 보이고 나며전 안보인다.
elseif cint(datediff("m", cdate(objRs("date_sent")) , date())) = 1 then
if nowday > 10 then
view_mode= "N"
else
view_mode= "Y"
end if
end if
[ASP]DATEDIFF 함수
설명
인수
datepart
겹쳐지는 범위의 유형을 지정하는 startdate와 enddate 부분입니다. 다음 표에서는 올바른 모든 datepart 인수를 보여 줍니다. 해당하는 사용자 정의 변수는 사용할 수 없습니다.
구문
DATEDIFF ( datepart , startdate , enddate )
DATEDIFF ( datepart , startdate , enddate )
참고
datepart 약어
year
yy, yyyy
quarter
qq, q
month
mm, m
dayofyear
dy, y
day
dd, d
week
wk, ww
hour
hh
minute
mi, n
second
ss, s
millisecond
ms
microsecond
mcs
nanosecond
ns
startdate
time, date, smalldatetime, datetime, datetime2 또는 datetimeoffset 값으로 확인될 수 있는 식입니다. date는 식, 열 식, 사용자 정의 변수 또는 문자열 리터럴일 수 있습니다. enddate에서 startdate를 뺍니다.모호성을 피하려면 4자리 연도를 사용하십시오. 2자리 연도에 대한 자세한 내용은 two digit year cutoff 옵션을 참조하십시오.
enddate
startdate를 참조하십시오.반환 값
각 datepart와 해당 약어는 동일한 값을 반환합니다.
반환 값이 int에 대한 범위(-2,147,483,648에서 +2,147,483,647 사이)를 벗어날 경우 오류가 반환됩니다. millisecond의 경우 startdate와 enddate 사이의 최대 차이는 24일, 20시간, 31분, 23.647초입니다. second의 경우 최대 차이는 68년입니다.startdate와 enddate가 모두 시간 값으로만 할당되고 datepart가 시간 datepart가 아닐 경우 0이 반환됩니다.
startdate 또는 enddate의 표준 시간대 오프셋 구성 요소는 반환 값을 계산하는 데 사용되지 않습니다.
smalldatetime은 분 단위까지만 정확하므로 startdate 또는 enddate에 smalldatetime 값이 사용될 경우 반환 값에서 초와 밀리초는 항상 0으로 설정됩니다.
날짜 데이터 형식의 변수에 시간 값만 할당된 경우 누락된 날짜 부분의 값은 기본값인 1900-01-01로 설정되고, 시간 또는 날짜 데이터 형식의 변수에 날짜 값만 할당될 경우 누락된 시간 부분의 값은 기본값인 00:00:00으로 설정됩니다. startdate 또는 enddate 중 하나는 시간 부분만 있고 다른 하나는 날짜 부분만 있는 경우 누락된 시간 및 날짜 부분은 기본값으로 설정됩니다.
startdate와 enddate의 날짜 데이터 형식이 다르고 한 쪽의 시간 부분 또는 소수 자릿수 초의 전체 자릿수가 다른 쪽보다 많을 경우 다른 쪽에서 누락된 부분은 0으로 설정됩니다.
datepart 범위
다음 문은 동일한 startdate와 동일한 enddate를 가집니다. 이러한 날짜는 서로 인접하며 차이는 .0000001초입니다. 각 문에서 startdate와 enddate 사이의 차이는 해당 datepart에서 하나의 달력 또는 시간 범위를 넘어섭니다. 각 문은 1을 반환합니다. 이 예에서 다른 연도가 사용되고 startdate와 enddate가 달력의 같은 주에 있을 경우 week에 대한 반환 값은 0이 됩니다.SELECT DATEDIFF(year, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(quarter, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(month, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(dayofyear, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(day, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(week, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(hour, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(minute, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(second, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
SELECT DATEDIFF(millisecond, '2005-12-31 23:59:59.9999999'
, '2006-01-01 00:00:00.0000000');
주의
DATEDIFF는 SELECT 목록, WHERE, HAVING, GROUP BY 및 ORDER BY 절에서 사용할 수 있습니다.반환 유형
int
'Language(언어) > ASP' 카테고리의 다른 글
ASP 클라이언트 IP 체크 (0) | 2014.02.12 |
---|---|
ASP 엑셀다운로드시 갑자기 한글이 깨지는 현상이 발생 (0) | 2014.01.16 |
ASP Array 함수 (0) | 2013.12.06 |
ASP CBool 함수 (0) | 2013.12.06 |
ASP CByte 함수 (0) | 2013.12.06 |
댓글