SQL DATEDIFF语法及时间函数 Sql 查询当天、本周、本月记录
SQL DATEDIFF语法及时间函数 Sql 查询当天、本周、本月记录
转:http://blog.csdn.net/Json1204/article/details/7863801?locationNum=11&fps=1
取某月天数:select day(dateadd(month,,'2012-02-01')-)
--当月天数
select day(dateadd(ms,-,DATEADD(m, DATEDIFF(m,,getdate())+,)))
---当月第一天
select dateadd(d,-day(getdate())+,getdate())
---当月最后一天
select dateadd(d,-,dateadd(m,,dateadd(d,-day(getdate())+,getdate()) ))
--本年最后一天
select dateadd(d,-day(getdate()),dateadd(m,,getdate()))
--当月第一个星期一
SELECT DATEADD(wk, DATEDIFF(wk, '', DATEADD(dd, - DAY(getdate()), getdate())), '')
SQL Server 日期算法:
本月的第一天:
select dateadd(mm,datediff(mm,,getdate()),)
本周的星期一:
select dateadd(wk,datediff(wk,,getdate()),)
一年的第一天:
select DATEADD(yy, DATEDIFF(yy,,getdate()), )
季度的第一天:
SELECT DATEADD(qq, DATEDIFF(qq,,getdate()), )
当天的零时:
SELECT DATEADD(dd, DATEDIFF(dd,,getdate()), )
SELECT DATEADD(ss,, DATEDIFF(dd,,getdate()))
select DATEADD(ss,-,convert(varchar(),getdate(),))
select cast(convert(varchar(),getdate(),)+' 00:00:00' as datetime)
上个月的最后一天:
本月第一天减2ms.
SELECT dateadd(ms,-,DATEADD(mm, DATEDIFF(mm,,getdate()), ))
本月的最后一天:
SELECT dateadd(ms,-,DATEADD(mm, DATEDIFF(m,,getdate())+, ))
本月的第一个星期一去掉时分秒:
DATEADD(day, DATEDIFF(day,,getdate()), )
显示星期几:
select datename(weekday,getdate())
如何取得某个月的天数:
SELECT Day(dateadd(ms,-,DATEADD(mm, DATEDIFF(m,,getdate())+, )))
判断是否闰年:
SELECT caseday(dateadd(mm, , dateadd(ms,-,DATEADD(yy, DATEDIFF(yy,,getdate()), )))) when28then'平年'else'闰年'end
一个季度多少天:
declare@mtinyint,@timesmalldatetimeselect@m=month(getdate()) select @m=case when @mbetween and then when @m between and then when @m between and then else endselect @time=datename(year,getdate())+'-'+convert(varchar(),@m)+'-01' select datediff(day,@time,dateadd(mm,,@time)) --A. 季度的第一天
SELECT CONVERT(datetime, CONVERT(char(), DATEADD(Month, DATEPART(Quarter,@dt)*-Month(@dt)-, @dt),)+'') --B. 季度的最后一天(CASE判断法)
SELECT CONVERT(datetime,CONVERT(char(),DATEADD(Month, DATEPART(Quarter,@dt)*-Month(@dt), @dt),) +CASE WHEN DATEPART(Quarter,@dt) in(,) THEN ''ELSE '' END)
--C. 季度的最后一天(直接推算法)
SELECT DATEADD(Day,-,CONVERT(char(),DATEADD(Month,+DATEPART(Quarter,@dt)*-Month(@dt), @dt),)+'') 一、sql server日期时间函数
. 当前系统日期、时间 select getdate()
. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值
例如:向日期加上2天
select dateadd(day,,'2004-10-15') --返回:-- ::00.000
. datediff 返回跨两个指定日期的日期和时间边界数
select datediff(day,'2004-09-01','2004-09-18') --返回:
. datepart 返回代表指定日期的指定日期部分的整数。
select DATEPART(month, '2004-10-15') --返回
. datename 返回代表指定日期的指定日期部分的字符串
select datename(weekday, '2004-10-15') --返回:星期五
. day(), month(),year() --可以与datepart对照一下
select 当前日期=convert(varchar(),getdate(),) ,当前时间=convert(varchar(),getdate(),)
select datename(dw,'2004-10-15')
select 本年第多少周=datename(week,'2004-10-15') ,今天是周几=datename(weekday,'2004-10-15') 二、日期格式转换
Select CONVERT(varchar(), GETDATE(), ): :57AM
Select CONVERT(varchar(), GETDATE(), ): //
Select CONVERT(varchar(), GETDATE(), ): 06.05.
Select CONVERT(varchar(), GETDATE(), ): //
Select CONVERT(varchar(), GETDATE(), ): 16.05.
Select CONVERT(varchar(), GETDATE(), ): --
Select CONVERT(varchar(), GETDATE(), ):
Select CONVERT(varchar(), GETDATE(), ): ,
Select CONVERT(varchar(), GETDATE(), ): ::
Select CONVERT(varchar(), GETDATE(), ): :::827AM
Select CONVERT(varchar(), GETDATE(), ): --
Select CONVERT(varchar(), GETDATE(), ): //
Select CONVERT(varchar(), GETDATE(), ):
Select CONVERT(varchar(), GETDATE(), ): :::
Select CONVERT(varchar(), GETDATE(), ): :::
Select CONVERT(varchar(), GETDATE(), ): -- ::
Select CONVERT(varchar(), GETDATE(), ): -- ::47.157
Select CONVERT(varchar(), GETDATE(), ): // :: AM
Select CONVERT(varchar(), GETDATE(), ): --
Select CONVERT(varchar(), GETDATE(), ): ::
Select CONVERT(varchar(), GETDATE(), ): -- ::47.250
Select CONVERT(varchar(), GETDATE(), ): :57AM
Select CONVERT(varchar(), GETDATE(), ): //
Select CONVERT(varchar(), GETDATE(), ): 2006.05.
Select CONVERT(varchar(), GETDATE(), ): //
Select CONVERT(varchar(), GETDATE(), ): 16.05.
Select CONVERT(varchar(), GETDATE(), ): --
Select CONVERT(varchar(), GETDATE(), ):
Select CONVERT(varchar(), GETDATE(), ): ,
Select CONVERT(varchar(), GETDATE(), ): ::
Select CONVERT(varchar(), GETDATE(), ): :::437AM
Select CONVERT(varchar(), GETDATE(), ): --
Select CONVERT(varchar(), GETDATE(), ): //
Select CONVERT(varchar(), GETDATE(), ):
Select CONVERT(varchar(), GETDATE(), ): :::
Select CONVERT(varchar(), GETDATE(), ): :::
Select CONVERT(varchar(), GETDATE(), ): -- ::
Select CONVERT(varchar(), GETDATE(), ): -- ::49.700
Select CONVERT(varchar(), GETDATE(), ): --16T10::49.827
Select CONVERT(varchar(), GETDATE(), ): ???? ?????? :::907AM 函数参数/功能
GetDate( )
返回系统目前的日期与时间
DateDiff (interval,date1,date2)
以interval 指定的方式,返回date2 与date1两个日期之间的差值 date2-date1DateAdd (interval,number,date)
以interval指定的方式,加上number之后的日期DatePart (interval,date)返回日期date中,interval指定部分所对应的整数值DateName (interval,date)返回日期date中,interval指定部分所对应的字符串名称 参数 interval的设定值如下:
值缩 写(Sql Server)Access 和 ASP说明:
YearYyyyyy年 ~ 9999QuarterQqq 季 ~ 4MonthMmm 月1 ~ 12Day of yearDyy 一年的日数,一年中的第几日 -366DayDdd 日,-31WeekdayDww一周的日数,一周中的第几日 -7WeekWkww 周,一年中的第几周 ~ 51HourHhh 时0 ~ 23MinuteMin 分钟0 ~ 59SecondSss秒 ~ 59MillisecondMs-毫秒 ~
--零时
DECLARE @startDate1 DATE;
DECLARE @startDate DATETIME;
SET @startDate1=GETDATE();SELECT @startDate=DATEADD(DAY,-,@startDate1);
DECLARE @endDate DATETIME ;SET @endDate=DATEADD(second,-,CONVERT(DATETIME,@startDate1));
SELECT @startDate startDate,@endDate endDate;
datepart 缩写
年 yy, yyyy
季度 qq, q
月 mm, m
年中的日 dy, y
日 dd, d
周 wk, ww
星期 dw, w
小时 hh
分钟 mi, n
秒 ss, s
毫秒 ms
微妙 mcs
纳秒 ns
sql server中的时间函数
sql server中的时间函数
. 当前系统日期、时间
select getdate()
. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值
例如:向日期加上2天
select dateadd(day,,'2004-10-15') --返回:-- ::00.000
. datediff 返回跨两个指定日期的日期和时间边界数。
select datediff(day,'2004-09-01','2004-09-18') --返回:
. datepart 返回代表指定日期的指定日期部分的整数。
SELECT DATEPART(month, '2004-10-15') --返回
. datename 返回代表指定日期的指定日期部分的字符串
SELECT datename(weekday, '2004-10-15') --返回:星期五
. day(), month(),year() --可以与datepart对照一下
select 当前日期=convert(varchar(),getdate(),)
,当前时间=convert(varchar(),getdate(),)
select datename(dw,'2004-10-15')
select 本年第多少周=datename(week,'2004-10-15')
,今天是周几=datename(weekday,'2004-10-15')
SQL DATEDIFF语法及时间函数 Sql 查询当天、本周、本月记录的更多相关文章
- ylb:SQL Server中的时间函数
ylbtech-SQL Server:SQL Server-SQL Server中的时间函数 SQL Server中的时间函数. 1,SQL Server中的时间函数 返回顶部 1. 当前系统日期 ...
- 在论坛中出现的比较难的sql问题:32(row_number函数+子查询 sql循环取差值)
原文:在论坛中出现的比较难的sql问题:32(row_number函数+子查询 sql循环取差值) 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路. sql循环取差值,该怎 ...
- 在论坛中出现的比较难的sql问题:31(row_number函数+子查询 月环比计算)
原文:在论坛中出现的比较难的sql问题:31(row_number函数+子查询 月环比计算) 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路.
- 在论坛中出现的比较难的sql问题:4(row_number函数+子查询 分组连续编号问题)
原文:在论坛中出现的比较难的sql问题:4(row_number函数+子查询 分组连续编号问题) 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路. 求一查询语句 http: ...
- 在论坛中出现的比较难的sql问题:3(row_number函数 分组查询)
原文:在论坛中出现的比较难的sql问题:3(row_number函数 分组查询) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所 ...
- 在论坛中出现的比较难的sql问题:2(row_number函数+子查询)
原文:在论坛中出现的比较难的sql问题:2(row_number函数+子查询) 2.如何去掉字段内的重复.
- sql的日期和时间函数–date_format
Mysql的日期和时间函数–date_format DATE_FORMAT(date,format)依照 format 字符串格式化 date 值.下面的修饰符可被用于 format 字符串中:修 ...
- SQL中的日期时间函数
之所以把日期时间函数单独拿出来回顾一下,是因为这一部分的内容比较独立,C#中也有类似的日期时间函数,趁着想得起来,写个标题先.
- SQL ServerOVER 子句,over开窗函数,SQL SERVER 开窗函数
https://technet.microsoft.com/zh-cn/library/ms189461(v=sql.105).aspx http://www.cnblogs.com/85538649 ...
随机推荐
- java eclipse导出可运行jar包(java服务)和导入
java eclipse导出可运行jar包(java服务)和导入 二.导出可运行包步骤: 1.选择要导出的项目: 2.右键项目-单击export: 3.选择导出类型:(Runnable JAR ...
- fseek函数
函数名:fseek函数 头文件:#include<stdio.h> 功能:把与fp有关的文件位置指针放到一个指定位置. 格式: int fseek(FILE *stream, long ...
- B君的第九题
B君的第九题 对于一个排列\(a_1, a_2,\dots,a_n\),如果对于一个i满足\(a_{i-1}<a_i>a_i+1\)则称i是一个极大值.我们认为\(a_0=a_{n+1}= ...
- 网络通讯与IP地址
1.主机:Host,台式机,笔记本,手机等设备 2.网络介质:网线,光纤,无线网Wi-Fi.移动网络 3.数据:一串子节 网络通讯的检测:安装wireshark,通常称为抓包工具 抓,capture ...
- C++基础学习10:继承
继承是类与类之间的关系,是一个很简单很直观的概念,与现实世界中的继承(例如儿子继承父亲财产)类似. 继承可以理解为一个类从另一个类获取方法(函数)和属性(成员变量)的过程.如果类B继承于类A,那么B就 ...
- [ZJOI2009]假期的宿舍 BZOJ 1433 二分图匹配
题目描述 学校放假了 · · · · · · 有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题.比如 A 和 B 都是学校的学生,A 要回家,而 C 来看B,C 与 A 不认识. ...
- Maven with Scala
下面是一个在Maven使用Scala的pom.xml <?xml version="1.0" encoding="UTF-8" standalone=&q ...
- python 字符串 操作
去空格及特殊符号 s.strip().lstrip().rstrip(',') 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sStr2 = sStr1 sS ...
- Kibana6.x.x——启动后警告信息:Session cookies will be transmitted over insecure connections. This is not recommended.
启动Kibana后,如果你看到如下警告信息: server log [08:03:18.001] [warning][security] Session cookies will be transmi ...
- 前端基础------jquer y学习
一. jquery是什么 快速,简洁,轻量级的JavaScript库(JavaScript框架)使用户可以快速的操作HTML document,实现动画效果,并方便的地为网站提供AJAX交互.文档全面 ...