sql常用函数之日期、text函数

日期函数

日期函数常用来操作DateTime和SmallDateTime类型的数据

(1) DAY(<date_expression>)

DAY函数返回date_expression 中的日期值。

例:select DAY('2004-10-15')返回:15

(2) MONTH(<date_expression>)

MONTH函数返回date_expression中的月份值。

例:select Month('2004-10-15')返回:10

(3) YEAR(<date_expression>)

YEAR函数返回date_expression中的年份值。

例:select Year('2004-10-15')返回:2004

(4) DATEADD(<datepart> <number> <date>)

DATEADD函数返回指定日期date加上指定的额外日期(为datepart类型)间隔number产生的新日期。

例:select dateadd(day,2,'2004-10-15')返回:2004-10-17 00:00:00.000

select dateadd(HOUR,2,'2004-10-15')返回:2004-10-15 02:00:00.000

注:参数datepart 在日期函数中经常被使用,它用来指定构成日期类型数据的各组条件,如年、季、月、日、星期等。其取值如下表:

日期函数中datepart参数的取值

datepart

缩写

取值

year

yy , yyyy

1753~9999

quarter

qq , q

1~4

month

mm , m

1~12

day of year

dy ,y

1~366

day

dd , d

1 ~31

week

wk , ww

1~ 54

weekday

dw

1~ 7

hour

hh

0 ~23

minute

mi ,n

0 ~59

second

ss,s

0~ 59

millisecond

ms

0 ~999

(5) DATEDIFF(<datepart>,<date1>,<date2>)

DATEDIFF函数返回两个指定日期在datepart方面的不同之处,即date2超过date1的差距值,其结果值是一个带有正负号的整数值。

例:select datediff(day,'2004-09-01','2004-09-18')返回:17

注:对不同的datepart,datediff函数所允许的最大差距值不一样,如datepart为second时datediff函数所允许的最大差距为68年;datepart为millisecond是,所允许的最大差距为24天20小时30分23秒647毫秒。

(6) DATENAME(<datepart>,<date>)

DATENAME函数以字符串的形式返回日期的指定部分,此部分由datepart 来指定。

例:select datename(weekday,'2004-10-15')返回:星期五

select datename(YEAR,'2004-10-15')返回:2004

(7) DATEPART(<datepart>,<date>)

DATEPART函数以整数值的形式返回日期的指定部分(类似于DATENAME(<datepart>,<date>)

),此部分由datepart 来指定。

注:DATEPART(day,<date>)等同于 Day(<date>)

DATEPART(Month,<date>)等同于 Month(<date>)

DATEPART(Year,<date>)等同于 Year(<date>)

(8) GETDATE()

GETDATE函数以DATETIME 的缺省格式返回系统当前的日期和时间,它常作为其他函数或命令的参数使用。

例:select GETDATE()返回:2013-04-18 21:42:03.837

select CONVERT(VARCHAR(20),GETDATE(),120) 等同于select CONVERT(VARCHAR,GETDATE(),20) 返回:2013-04-20 09:28:50(注:20表示位数,可用10位,如下:)

select CONVERT(VARCHAR(10),GETDATE(),120) 返回:2013-04-20

Text函数和Image函数

(1)TEXTPTR(<column>)

TEXTPTR函数返回一个指向存储文本的第一个数据库页的指针。

注:其返回值为一个varbinary(16)类型的二进制字符串。如果数据类型为text、ntext或image的列没有赋予初值,则textptr函数返回一个Null指针。

(2)TEXTVALID(<'table.column'>,<text_ pointer>)

TEXTVALID函数用于检查指定的文本指针是否有效。若有效返回1;无效返回0。如果列未赋予初值,则返回Null值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值