总结一下,免得每次都得去查看别人的东西(日期函数)

lihan6415151528 2009-02-05 01:21:54
日期用到的,即全拼和缩写都可以放到参数里面表达
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
Weekday Dw w 一周的日数,一周中的第几日 1-7
Week Wk ww 周,一年中的第几周 0 ~ 51
Hour Hh h 时0 ~ 23
Minute Mi n 分钟0 ~ 59
Second Ss s 秒 0 ~ 59
Millisecond Ms - 毫秒 0 ~ 999
========================================================
1: getdate()函数
返回当前时间
select getdate()

------------------------------------------------------
2009-02-05 11:18:39.770

(所影响的行数为 1 行)

==========================================================
2:dateadd函数
第一个参数是要添加的类型,比如MM,第二个参数你要添加多少,第三个是你要往哪里添加
SELECT DATEADD(m,2,'2004-1-1')[DATELIHAN]
DATELIHAN
------------------------------------------------------
2004-03-01 00:00:00.000

(所影响的行数为 1 行)

SELECT DATEADD(YY,1,'2004-1-1')[DATELIHAN]
DATELIHAN
------------------------------------------------------
2005-01-01 00:00:00.000

(所影响的行数为 1 行)
===================================================================================
3:datediff函数
返回参数二与参数三两个日期之间的差值 参数三-参数二 返回类型为参数一
select datediff(dd,'2009-12-27','2009-12-25')[DATELIHAN]
DATELIHAN
-----------
-2

(所影响的行数为 1 行)
select datediff(yy,'2007-12-27','2009-12-25')[DATELIHAN]
DATELIHAN
-----------
2

(所影响的行数为 1 行)
=================================================================================
4:datepart函数
返回参数二中对应的参数一的值
select datepart(mm,'2008-08-07')[月份]
select datepart(yy,'2008-08-07')[年份]
月份
-----------
8

(所影响的行数为 1 行)

年份
-----------
2008

(所影响的行数为 1 行)

========================================================================================
5:datename函数
返回代表指定日期的指定日期部分的字符串
SELECT datename(weekday, '2009-10-15') [星期]
星期
------------------------------
星期四

(所影响的行数为 1 行)

=======================================================================================

6:day函数
返回一个整数,表示参数指定的 date 是该月份的哪一天
select day('2009-2-5')[第几天]
第几天
-----------
5

(所影响的行数为 1 行)
=========================================================================================

7:month函数
返回一个整数,表示指定参数的 date 是该年的哪一月
SELECT month('2007-04-30');

-----------
4

(所影响的行数为 1 行)
=================================================================================

8:year函数
返回一个整数,表示参数指定的 date 是哪一年
SELECT year('2007-04-30');
-----------
2007

(所影响的行数为 1 行)
============================================================================
例如想要查询距离现在10天以内的记录
select * from tablename where datediff(day,你的日期字段,getdate())<10
例如想查询一段时间内的记录
select * from talbename where 你的日期字段 between 日期一 and 日期二


...全文
236 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
figo1688 2010-06-17
  • 打赏
  • 举报
回复
mark,备用
Ptruth 2009-09-18
  • 打赏
  • 举报
回复
mark
Dhoopu 2009-02-05
  • 打赏
  • 举报
回复
學習


谢谢楼主咯~~~~
claro 2009-02-05
  • 打赏
  • 举报
回复
帮顶
百年树人 2009-02-05
  • 打赏
  • 举报
回复
路过...
zhangle861010 2009-02-05
  • 打赏
  • 举报
回复
阅读完毕!!!
dobear_0922 2009-02-05
  • 打赏
  • 举报
回复
例如想要查询距离现在10天以内的记录
select * from tablename where datediff(day,你的日期字段,getdate())<10

------------
这个把10以前的数据也查出来了,,,
dobear_0922 2009-02-05
  • 打赏
  • 举报
回复
看看先
lgxyz 2009-02-05
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 roy_88 的回复:]
應用可下載鄒建的代碼,例子比較全面
[/Quote]
看了邹建的那些代码,
收益相当大
lihan6415151528 2009-02-05
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 csdyyr 的回复:]
學習
[/Quote]
谦虚了吧老兄,我这都是基础的
中国风 2009-02-05
  • 打赏
  • 举报
回复
應用可下載鄒建的代碼,例子比較全面
wzy_love_sly 2009-02-05
  • 打赏
  • 举报
回复
Yang_ 2009-02-05
  • 打赏
  • 举报
回复
.
  • 打赏
  • 举报
回复
mark?
csdyyr 2009-02-05
  • 打赏
  • 举报
回复
學習
水族杰纶 2009-02-05
  • 打赏
  • 举报
回复
sf

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧