当前位置:Gxlcms >
数据库问题 >
SQL Server 获取(本周、本月、本旬、本季、本年)的某一天
SQL Server 获取(本周、本月、本旬、本季、本年)的某一天
时间:2021-07-01 10:21:17
帮助过:30人阅读
------------------------------本周----------------------------------------*/
--本周第一天
SELECT DATEADD(
Day,
1-(
DATEPART(Weekday,
getdate())
+@@DATEFIRST-1)
%7,
getdate())
--or
select dateadd(wk,
datediff(wk,
0,
getdate()),
0)
--本周最后第一天
select dateadd(wk,
datediff(wk,
0,
getdate()),
6)
/*-----------------------------本月、上月、下月-------------------------------------------*/
--上月第一天
SELECT CONVERT(
CHAR(
10),
DATEADD(
month,
-1,
DATEADD(dd,
-DAY(
GETDATE())
+1,
GETDATE())),
111)
--上月最后一天
SELECT CONVERT(
CHAR(
10),
DATEADD(ms,
-3,
DATEADD(mm,
DATEDIFF(mm,
0,
getdate()),
0)),
111)
+‘ 23:59:59‘
--本月第一天
select dateadd(dd,
-datepart(dd,
getdate())
+1,
getdate())
--本月第一个星期一
SELECT DATEADD(wk,
DATEDIFF(wk,
‘‘,
DATEADD(dd,
6 - DAY(
getdate()),
getdate())),
‘‘)
--本月最后一天
select dateadd(dd,
-datepart(dd,
getdate()) ,
dateadd(mm,
1,
getdate()))
--本月天数
select datediff(dd,
dateadd(dd,
-datepart(dd,
getdate())
+1,
getdate()),
dateadd(dd,
-datepart(dd,
getdate())
+1,
dateadd(mm,
1,
getdate())))
--or
select datepart(dd,
dateadd(dd,
-1,
dateadd(mm,
1,
cast(
cast(
year(
getdate())
as varchar)
+‘-‘+cast(
month(
getdate())
as varchar)
+‘-01‘ as datetime))))
--下月第一天
select dateadd(dd,
-datepart(dd,
getdate())
+1,
dateadd(mm,
1,
getdate()))
--下月最后一天
SELECT CONVERT(
CHAR(
10),
DATEADD(ms,
-3,
DATEADD(mm,
DATEDIFF(m,
0,
getdate())
+2,
0)),
111)
+‘ 23:59:59‘
/*-----------------------------本季----------------------------------*/
--季度第一天
SELECT DATEADD(qq,
DATEDIFF(qq,
0,
getdate()),
0)
--季度最后一天(直接推算法)
SELECT DATEADD(
Day,
-1,
CONVERT(
char(
8),
DATEADD(
Month,
1+DATEPART(Quarter,
getdate())
*3-Month(
getdate()),
getdate()),
120)
+‘1‘)
/*-----------------------------本年、去年----------------------------------*/
--去年最后一天
SELECT dateadd(ms,
-3,
DATEADD(yy,
DATEDIFF(yy,
0,
getdate()),
0))
--今年第一天
SELECT DATEADD(yy,
DATEDIFF(yy,
0,
getdate()),
0)
--今年最后一天
SELECT dateadd(ms,
-3,
DATEADD(yy,
DATEDIFF(yy,
0,
getdate())
+1,
0))
SQL Server 获取(本周、本月、本旬、本季、本年)的某一天
标签:sql efi 直接 sele ediff -- art pre 第一天