SQL SERVER日期查询方法及操作是什么
Admin 2022-08-08 群英技术资讯 1501 次浏览
本篇内容介绍了“SQL SERVER日期查询方法及操作是什么”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!----YYYY
--当前年份第一天的前一天
SELECT TRUNC(SYSDATE,'yyyy') - 1 + 8 / 24 FROM DUAL---2019/12/31 上午 08:00:00
--当前年份的第一天
SELECT TRUNC(SYSDATE,'yyyy') + 8 / 24 FROM DUAL---2020/01/01 上午 08:00:00
----MM
--当前月的第一天
SELECT TRUNC(SYSDATE,'MM') - 1 + 8 / 24 FROM DUAL---2020/04/30 上午 08:00:00
--当前月的第一天的前一天
SELECT TRUNC(SYSDATE,'MM') + 8 / 24 FROM DUAL---2020/05/01 上午 08:00:00
----DD
--当前日的前一天
SELECT TRUNC(SYSDATE,'DD') - 1 + 8 / 24 FROM DUAL---2020/05/19 上午 08:00:00
SELECT TRUNC(SYSDATE) - 1 + 8 / 24 FROM DUAL---2020/5/19 上午 08:00:00
--当前日
SELECT TRUNC(SYSDATE,'DD') + 8 / 24 FROM DUAL---2020/05/20上午 08:00:00
SELECT TRUNC(SYSDATE) + 8 / 24 FROM DUAL ---2020/5/20 上午 08:00:00
----D
--当前星期的第一天
SELECT TRUNC(SYSDATE,'D') FROM DUAL---2020/05/17 当前星期的第一天 {是星期日哦}
----HH
--当前的时间,精确到小时
SELECT TRUNC(SYSDATE,'HH') FROM DUAL---2020/05/20 下午 03:00:00
--当前的时间的前一小时
SELECT TRUNC(SYSDATE,'HH')- 1/24 FROM DUAL---2020/05/20下午 02:00:00
----MI
--当前时间,精确到分
SELECT TRUNC(SYSDATE,'MI') FROM DUAL---2020/05/20 下午 03:40:00
--当前时间前一分钟
SELECT TRUNC(SYSDATE,'MI') -1/24/60 FROM DUAL---2020/05/20 下午 03:39:00
---上周
SELECT TO_CHAR(TRUNC(SYSDATE, 'IW') - 7, 'yyyymmdd') FROM DUAL
SELECT TO_CHAR(TRUNC(SYSDATE, 'IW') - 1, 'yyyymmdd') FROM DUAL
---本周
SELECT TO_CHAR(TRUNC(SYSDATE, 'IW') , 'yyyymmdd') FROM DUAL
SELECT TO_CHAR(TRUNC(SYSDATE, 'IW') + 6, 'yyyymmdd') FROM DUAL
---上一月的第一天和最后一天
select trunc(add_months(sysdate, -1), 'mm') first_day,
last_day(add_months(sysdate, -1)) last_day
from dual
---本月的最后一天
SELECT TO_CHAR(last_day(add_months(sysdate, 0)), 'yyyymmdd') FROM DUAL
---当年 第一天
SELECT TO_CHAR(trunc(sysdate, 'yyyy'), 'yyyymmdd') FROM DUAL
---上年最后一天
SELECT TO_CHAR(trunc(sysdate,'iyyy'), 'yyyymmdd') FROM DUAL
---当月第一天
SELECT TO_CHAR(trunc(sysdate,'mm'), 'yyyymmdd') FROM DUAL
---当月数值
SELECT TO_CHAR(sysdate,'mm') FROM DUAL
---当周数值
SELECT TO_CHAR(sysdate,'ww') FROM DUAL
1、获取当前时间
select getdate()
2、截取需要的值
select datepart(year,getdate()) select datepart(month,getdate()) select datepart(day,getdate()) select datepart(hour,getdate()) select datepart(minute,getdate()) select datepart(second,getdate()) select datepart(week,getdate())
3、在日期中添加或减去指定的时间间隔
select dateadd(year,3,getdate()) --获取当前时间,往后推迟三年 select dateadd(month,3,getdate()) --获取当前时间,往后推迟三个月 select dateadd(day,3,getdate()) --获取当前时间,往后推迟三天 select dateadd(hour,3,getdate()) --获取当前时间,往后推迟三小时 select dateadd(minute,3,getdate()) --获取当前时间,往后推迟三分钟 select dateadd(second,3,getdate()) --获取当前时间,往后推迟三秒钟
4、返回两个日期之间的时间
select datediff(year,'2020/11/30',getdate()) --2001-08-19和当前时间之间差多少年 select datediff(month,'2020/11/30',getdate()) --2001-08-19和当前时间之间差多少月 select datediff(day,'2020/11/30',getdate()) --2001-08-19和当前时间之间差多少天
5、用不同的格式显示日期/时间
select convert(char,getdate(),8) --显示当前时:分:秒 "15:00:19" select convert(char,getdate(),10) --显示当前月-日-年,显示形式“12-01-20” select convert(char,getdate(),11) --显示当前年-月-日,显示形式“20/12/01” select convert(char,getdate(),14) --显示当前时-分-秒-毫秒,显示形式“14:58:06:340" -------- select convert(varchar(100), GETDATE(), 111) -- 2020/12/01 select convert(varchar(100), GETDATE(), 112) -- 20201201 select convert(varchar(100), GETDATE(), 120) --2020-12-01 15:09:51 select convert(varchar(100), GETDATE(), 121) --2020-12-01 15:10:03.717 select convert(varchar(100), GETDATE(), 111)+' ' + convert(char,getdate(),8) --select convert(char,getdate(),8)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
查询调优通常是提高SQL Server性能的最快方法。大多数情况下,系统级服务器性能(内存,处理器等)的改进措施无效且昂贵。专家开发人员认为,大多数性能问题都可以归因于查询质量不佳和索引编制效率低下,而不是硬件约束。实际上,某些性能问题只能通过查询调整来解决。
这篇文章介绍了SQL Server中常用截取字符串函数,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
SQL Server 对于数据平台的开发者来说越来越友好,下面这篇文章主要给大家介绍了关于SQLServer中JSON文档型数据的查询问题的解决方法,需要的朋友可以参考下
前言前面我们的几篇文章介绍了一系列关于运算符的介绍,以及各个运算符的优化方式和技巧。其中涵盖:查看执行计划的方式、几种数据集常用的连接方式、联合运算符方式、并...
decode函数在sql中如何使用?一些新手对于decode()函数的使用不是很了解,因此这篇本章给大家分享关于decode()函数的用法介绍,接下来我们具体来了解了解。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008