您好,欢迎访问一九零五行业门户网

SQL 查询本周本月问题

sql 查询本周本月问题 ---求相差天数 select datediff(day,
sql 查询本周本月问题
---求相差天数  
select   datediff(day,'2004-01-01',getdate())
--1.一个月第一天的  
select   dateadd(mm,   datediff(mm,0,getdate()),   0)
--2.本周的星期一  
select   dateadd(wk,   datediff(wk,0,getdate()),   0)
select   dateadd(wk,datediff(wk,0,getdate()),6)  
--3.一年的第一天  
select   dateadd(yy,   datediff(yy,0,getdate()),   0)
--4.季度的第一天  
select   dateadd(qq,   datediff(qq,0,getdate()),   0)
--5.当天的半夜  
select   dateadd(dd,   datediff(dd,0,getdate()),   0)
--6.上个月的最后一天  
select   dateadd(ms,-3,dateadd(mm,   datediff(mm,0,getdate()),   0))
--7.去年的最后一天  
select   dateadd(ms,-3,dateadd(yy,   datediff(yy,0,getdate()),   0))
--8.本月的最后一天  
select   dateadd(ms,-3,dateadd(mm,   datediff(m,0,getdate())+1,   0))
--9.本年的最后一天  
select   dateadd(ms,-3,dateadd(yy,   datediff(yy,0,getdate())+1,   0))
--10.本月的第一个星期一  
select   dateadd(wk,  
datediff(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())),   0)
--查询本周注册人数  
select   count(*)   from   [user]  
where   datediff(week,create_day-1,getdate())=0
--上周注册人数  
select   count(*)   from   [user]  
where   datediff(week,create_day-1,getdate())=1
--本月注册人数  
select   count(*)   from   [user]  
where   datediff(month,create_day,getdate())=0
--上月注册人数  
select   count(*)   from   [user]  
where   datediff(month,create_day,getdate())=1
--如果要效率,这样写查询
--查询本周注册人数  
select   count(*)   from   [user]  
where   create_day>=dateadd(day,2-datepart(weekday,getdate()),convert(varchar,getdate(),112))  
and   create_day    
--上周注册人数  
select   count(*)   from   [user]  
where   create_day>=dateadd(day,-5-datepart(weekday,getdate()),convert(varchar,getdate(),112))  
and   create_day
--本月注册人数  
select   count(*)   from   [user]  
where   create_day>=dateadd(day,1-day(getdate()),convert(varchar,getdate(),112))  
and   create_day    
--上月注册人数  
select   count(*)   from   [user]  
where   create_day>=dateadd(month,-1,dateadd(day,1-day(getdate()),convert(varchar,getdate(),112)))  
and   create_day  
--本周  
select   count(*)   from   user  
where   datediff(dd,create_day,getdate())           
--上周  
select   count(*)   from   user  
where   datediff(dd,create_day,(getdate()   -   datepart(dw,getdate())))       
--本月  
select   count(*)   from   user  
where   datepart(mm,create_day)   =   datepart(mm,getdate())  
--上月  
select   count(*)   from   user  
where   datepart(mm,create_day)   =   datepart(mm,getdate())   -   1
--本周  
select   count(*)   from   [user]  
where   datediff(dd,create_day,getdate())           
--上周  
select   count(*)   from   [user]  
where   datediff(dd,create_day,(getdate()   -   datepart(dw,getdate())))       
--本月  
select   count(*)   from   [user]  
where   datepart(mm,create_day)   =   datepart(mm,getdate())  
--上月  
select   count(*)   from   [user]  
where   datepart(mm,create_day)   =   datepart(mm,getdate())   -   1
学习  
month(create_day)=month(getdate())本月  
month(create_day)=month(getdate())-1   上月
补充 查询今日所有的
select * from feedback where (datediff(d,fedtime,getdate())=0) order by fedid desc

其它类似信息

推荐信息