SqlServer获取当前日期
1. 获取当前日期
select GETDATE()
格式化:
select CONVERT(varchar,GETDATE(),120) --2018-04-23 14:47:10
2. 获取当前年 --2017
select DATENAME(YYYY,GETDATE()) --2018 select DATENAME(YEAR,GETDATE()) --2018 select DATEPART(YYYY,GETDATE()) --2018 select DATEPART(YEAR,GETDATE()) --2018 select YEAR(时间字段名)--2018
3.获取当前月 --05或5
select DATENAME(MM,GETDATE()) --04 select DATENAME(MONTH,GETDATE()) --04 select DATEPART(MM,GETDATE()) --4 select DATEPART(MONTH,GETDATE()) --4 select MONTH(时间字段名) --4
4.获取当前日期 --07或7
select DATENAME(DAY,GETDATE()) --23 select DATENAME(D,GETDATE()) --23 select DATENAME(DD,GETDATE()) --23 select DATEPART(D,GETDATE()) --23 select DATEPART(DD,GETDATE()) --23 select DATEPART(DAY,GETDATE()) --23 select DAY(GETDATE())
5. 获取当前年月 --201705
select CONVERT(varchar(6),GETDATE(),112) --201804 select CONVERT(varchar(7),GETDATE(),120) --2018-04
6.获取当前年月日 --20170512
select CONVERT(varchar(8),GETDATE(),112) --20180423 select CONVERT(varchar(10),GETDATE(),120) --2018-04-23
7.日期相关函数整理:
GETDATE() :获取当前时间,时间格式默认。
DATENAME:参数为两个,取值区间 interval 和时间 date
date 就是时间;
interval 包括 年,月,日,星期等
e.g:
YEAR 年;YYYY 年;YY 年;
QUARTER 季度;QQ 季度 ;Q 季度;
MONTH 月(04);MM 月(04);M 月(04);
WEEKDAY 星期几;DW 星期几;W 星期几;
WEEK 一年的第几周;WK 一年的第几周;WW 一年的第几周;ISOWK 一年的第几周;ISOWW 一年的第几周;ISO_WEEK 一年的第几周;
DAY 天;DD 天;D 天;
DAYOFYEAR 一年的第几天;DY 一年的第几天;Y 一年的第几天;
HOUR 小时;HH 小时;
MINUTE 分钟;MI 分钟;N 分钟;
SECOND 秒;SS 秒;S 秒;
MCS 微秒(略);MICROSECOND 微秒(略);MILLISECOND 毫秒(略);MS 毫秒(略) ; NANOSECOND 十亿分之一秒(略);NS 十亿分之一秒(略);
DATEPART:参数参考DATENAME,不过返回值不一样,DATENAME返回varchar,DATEPART返回int
CONVERT 函数转换格式:主要注意第三个参数 date_style ;格式:select CONVERT(varchar,GETDATE(),0)
最后的 date_style 可以有 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,100,
101,102,103,104,105,106,107,108,109,110,111,112,113,114,120,121,126,127,130,131等
常用的 20,23,24,102,111,112,120等;
示例:
select CONVERT(varchar,GETDATE(),20) --2018-04-23 14:44:22 select CONVERT(varchar,GETDATE(),23) --2018-04-23 select CONVERT(varchar,GETDATE(),24) --14:44:22 select CONVERT(varchar,GETDATE(),102) --2018.04.23 select CONVERT(varchar,GETDATE(),111) --2018/04/23 select CONVERT(varchar,GETDATE(),112) --20180423
字符串转日期:
select CONVERT(datetime,'2018-04-23',20)
第三个参数参考以上。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 百万级群聊的设计实践
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期