以文本方式查看主题

-  搭建论坛  (http://bbs.diylsoft.com:8118/starforum/index.asp)
--  数据库交流  (http://bbs.diylsoft.com:8118/starforum/list.asp?boardid=6)
----  [推荐]datepart()函数  (http://bbs.diylsoft.com:8118/starforum/dispbbs.asp?boardid=6&id=32204)

--  作者:萝卜特二
--  发布时间:2012-10-15 19:14:11
--  [推荐]datepart()函数
* datepart()函数可以方便的取到时期中的各个部分
*如日期:2006-07--02 18:15:36.513
* yy:取年 2006
* mm:取月 7
* dd:取月中的天 2
*
dy:取年中的天 183
* wk:取年中的周 27
* dw:取周中的天 1
* qq:取年中的季度 3
* hh:取小时 18
* mi:取分钟 15
* ss:取秒 36
* 以下简单的语句可以演示所取到的结果
*/


select getdate()
select datepart(mm,getdate())
select datepart(yy,getDate())
select datepart(dd,getdate())
select datepart(dy,getdate())
select datepart(wk,getdate())
select
datepart(dw,getdate())
select datepart(qq,getdate())
select datepart(hh,getdate())
select datepart(mi,getdate())
select datepart(
ss,getdate())

select datediff(dd,getdate(),\'12/25/2006\')--计算从今天到12/25/2006还有多少天
select datediff(mm,getdate(),\'12/25/2006\')--计算从今天到12/25/2006还有多少个月
select datename(mm,getdate()) --以字符串而不是数字的形式得到今天的月份(07)

select dateadd(dd,30,getdate()) --在目前的日期日期上加30天
select dateadd(mm,3,getdate()) --在目前的日期日期上加3个月
select dateadd(yy,1,getdate()) --在目前的日期日期上加1年

select DATEADD(qq,DATEDIFF(qq,0,getdate()), 0)--得到本季度第一天
select dateadd(mm,-3,DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)) --得到上主、季度第一天