- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
sql dateadd datediff datepart 用法
sql dateadd datediff datepart 用法
如果需要得到某一天是星期几,可以使用SQL Server 中的日期函数datename()来实现,具体方法如下,希望对您学习SQL Server 日期函数的使用有所帮助。
DATEPART() 函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。
语法
DATEPART(datepart,date)
DATEADD() 函数在日期中添加或减去指定的时间间隔。
语法
DATEADD(datepart,number,date)
date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。
DATEDIFF() 函数返回两个日期之间的天数。
语法
DATEDIFF(datepart,startdate,enddate)
startdate 和 enddate 参数是合法的日期表达式。
求 本周第一天,本月第一天,本季第一天,本年第一天等,可用以下方法
DATEDIFF(mm,0,getdate()) -- 得到与1900-01-01相关多少个月
DATEADD(mm, M, 0) --m即上面得到相差的月份,0代表1900-01-01 ,加上相关的月分就是这个月的第一天
更详细如下:
SELECT DATEADD(week,DATEDIFF(week,0,GETDATE()),0) --本周周一
SELECT DATEADD(week,DATEDIFF(week,0,GETDATE())+1,0) --下周周一
SELECT DATEADD(week,-1,DATEADD(week,DATEDIFF(week,0,GETDATE()),0)) --本周周一,减去 1 周,就是上周周一
SELECT DATEADD(ms,-3,DATEADD(week,DATEDIFF(week,0,GETDATE()),0)) --本周周一,减去 3 毫秒,就是上周周日
SELECT DATEADD(ms,-3,DATEADD(week,DATEDIFF(week,0,GETDATE())+1,0)) --下周周一减去 3 毫秒,就是本周周日
SELECT DATEADD(ms,-3,DATEADD(week,DATEDIFF(week,0,GETDATE())+2,0)) --下下周周一减去 3 毫秒,就是下周周日
/***
其他类似于月,季、年,都可参照此方法,如本月第一天,最后一天,上月第一天,上月最后一天。
*/
查询本月的记录
select * from tableName where DATEPART(mm, theDate) = DATEPART(mm, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE())
查询本周的记录
select * from tableName where DATEPART(wk, theDate) = DATEPART(wk, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE())
查询本季的记录
select * from tableName where DATEPART(qq, theDate) = DATEPART(qq, GETDATE()) and DATEPART(yy, theDate) = DATEPART(yy, GETDATE())
其中:GETDATE()是获得系统时间的函数。
今天是星期几,例子 1:
set language NEnglish
select datename(weekday, getdate())
Wednesday
今天是星期几,例子 2:
set language NSimplified Chinese
select datename(weekday, getdate())
星期三
今天是星期几,例子 3:
set datefirst 1
select datepart(weekday, getdate())
3 -- 星期三
注意:这里用到了另外一个 SQL Server 日期函数 datepart()。 “set datefirst 1” 表示设置一周的第一天为星期一。在老美,他们的一周的第一天习惯为星期天。我们可以通过 @@datefirst 函数得到当前会话的 datefirst 设置值。
select @@datefirst
1
你可能有疑问:“set language” 后面的语言参数是从哪里得到的?可以得到其他国家语言中的星期几吗?当
您可能关注的文档
- QQ2011图标点亮.doc
- QQshow展开.doc
- QQ个性签名大全(七)经典.doc
- QQ图标攻略.doc
- QQ手机:小企鹅的新征途.doc
- qq拼音.doc
- QQ文件及文件夹夹详细说明.doc
- QQ文件及文件夹详细说明.doc
- QQ文件夹详解.doc
- QQ炫舞衣服代码.doc
- 2026秋季中国工商银行集约运营中心(佛山)校园招聘20人备考题库含答案详解(培优).docx
- 中国农业银行宁波市分行2026年度校园招聘214人备考题库附答案详解(夺分金卷).docx
- “梦工场”招商银行长沙分行2026寒假实习生招聘备考题库附答案详解(轻巧夺冠).docx
- 2026贵州省公共资源交易中心定向部分高校选调优秀毕业生专业技术职位考试备考题库完整参考答案详解.docx
- 中国建设银行建信金融资产投资有限公司2026年度校园招聘8人备考题库含答案详解(a卷).docx
- 中国农业银行宁夏回族自治区分行2026年度校园招聘146人备考题库及一套参考答案详解.docx
- 门头沟区青少年事务社工招聘1人备考题库附答案详解(模拟题).docx
- 中国建设银行运营数据中心2026年度校园招聘20人备考题库含答案详解ab卷.docx
- 中国建设银行建银工程咨询有限责任公司2026年度校园招聘9人备考题库及答案详解(有一套).docx
- 2026秋季中国工商银行重庆市分行校园招聘270人备考题库含答案详解(完整版).docx
原创力文档


文档评论(0)