1. 程式人生 > >sql時間比較

sql時間比較

--查詢本週註冊人數  
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<dateadd(day,9-datepart(weekday,getdate()),convert(varchar,getdate(),112))  
    
--上週註冊人數  
select   count(*)   from   [user]  
where   create_day>=dateadd(day,-5-datepart(weekday,getdate()),convert(varchar,getdate(),112))  
and   create_day<dateadd(day,2-datepart(weekday,getdate()),convert(varchar,getdate(),112))  
    
    
--本月註冊人數  
select   count(*)   from   [user]  
where   create_day>=dateadd(day,1-day(getdate()),convert(varchar,getdate(),112))  
and   create_day<dateadd(month,1,dateadd(day,1-day(getdate()),convert(varchar,getdate(),112)))  
    
--上月註冊人數  
select   count(*)   from   [user]  
where   create_day>=dateadd(month,-1,dateadd(day,1-day(getdate()),convert(varchar,getdate(),112)))  
and   create_day<dateadd(day,1-day(getdate()),convert(varchar,getdate(),112))  
  
--本週  
select   count(*)   from   User  
where   datediff(dd,create_day,getdate())   <=   datepart(dw,getdate())  
        
--上週  
select   count(*)   from   User  
where   datediff(dd,create_day,(getdate()   -   datepart(dw,getdate())))   <=   7  
    
--本月  
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())   <=   datepart(dw,getdate())  
        
--上週  
select   count(*)   from   [User]  
where   datediff(dd,create_day,(getdate()   -   datepart(dw,getdate())))   <=   7  
    
--本月  
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   上月

相關推薦

sql 時間比較 查詢語句

1 查詢時間段: 則直接欄位 大於 或小於該時間段 即可 select * from t_person where born >= '2000-01-01' and  born <= '2017-01-01'  或者用 

sql時間比較

--查詢本週註冊人數   select   count(*)   from   [user]   where   datediff(week,create_day-1,getdate())=0        --上週註冊人數   select   count(*)   from   [user]   wher

sql server 日期時間比較函式

DATEDIFF 返回跨兩個指定日期的日期和時間邊界數。 語法 DATEDIFF ( datepart , startdate , enddate ) 引數 datepart 是規定了應在日期的哪一部分計算差額的引數。下表列出了 Microsoft® SQL Server™ 識別的日期部分和縮寫。 日期部分

sql語句查詢時間比較

SELECT     e.id AS "id",     e.enterprise_name AS "enterpriseName",     y.industry_name AS "industryName",     d.district_name AS "distric

mysql中sql語句進行時間比較

這裡是一個使用日期函式的例子。下面的查詢選擇了所有記錄,其date_col的值是在最後30天以內: mysql> SELECT something FROM table WHERE TO_DAYS(NOW())

mysql和sql時間 欄位比較大小的問題

不能用兩個字串比較的小的方法來做。例如:‘2010-10-20’ > ‘2010-12-15’ 正解:都是  ,   後面的時間- 前面的時間 mysql select count(*) from table where  timestampdiff(hour,'2008-08-08

SQL時間格式化

getdate 時間 當前 () span ati -- logs sql DATEDIFF(DAY, RD.ReservationTime, GETDATE()) = 0 -- 對比當前時間 CONVERT(INT,Datename(hour,GetDate())

Oracle字符和時間比較

知識 etime nbsp 間隔 to_date ember 位數 不一致 -m 數據庫中的字段 2017-07-11 13:37:51 類型是char 或者varchar 要進件與 ‘20170625‘ 比較,格式不一致,需要將他轉換成:yyyyMMdd 字符串 1、先

js時間比較,獲取n天後(前)的日期

title xtml color mon nbsp con nth get log <html> <head> <meta http-equiv="Content-Type" content="textml; charset=utf

Sql 時間做條件

spa 天數 條件 edi select bsp 當前 即使 sel 在sql的查詢中我們應該盡量避免在WHERE條件中的字段上用函數,如DATEDIFF,DATEADD,CONVERT 因為這樣做會使該字段上的索引失效,影響SQL語句的性能。即使該字段上沒有索引,也會給s

sql 時間轉換問題 from_unixtime() UNIX_TIMESTAMP()

函數 執行 今天 問題 tail 時間戳 時間 article ros http://blog.csdn.net/test_soy/article/details/50328367 from_unixtime()是MySQL裏的時間函數 date為需要處理的參

sql時間

ask time 格式 -1 sda 時間 span sele lec create_date 格式為date 可行sql: select * from bus_task_order t where t.create_date>sysdate select *

SQL Server比較2table字段的差異

字段名 code outer 數據庫名 浪費 統計 p s mce del 由於項目前後用了2個數據庫,需要統計數據庫結構的變化,需要統計每個表的變化,由於人工核對挺浪費時間,就寫了一點代碼: 1.統計表的字段數量(查詢表有多少列):   select count(name

C#三種創建對象方法所需時間比較。。。。。

http common AD ins eat 通過 png pos sem   C#創建對象的三種方法 new()、Activator、Assembly,接下來通過代碼直接來看看運行的速度。。。。   首先,先看看三種創建對象實例的方法: //new

explain和profiling分析查詢SQL時間

ati 打開 fix -c ret read 索引 -- title mysql可以通過profiling命令查看到執行查詢SQL消耗的時間。 默認情況下,mysql是關閉profiling的,命令: [sql] view plain copy select @@

jquery獲取當前時間比較日期

ret nds minutes div date ets ace 大於 OS //獲取當前時間,格式 2015-09-05 10:00:00.000 function getnowtime() { var nowtime = new

SQL比較好的For xml 用法實例

log ice AR dbo ID orm transport cat 商品 --包裹單號 入庫時間 交易號 商品分類 商品名稱 實付款SELECT a.DeliveryCode AS ‘包裹單號‘,a.DomesticWarehouseInTime AS ‘入庫時間‘,a

SQL 時間戳轉換為日期

sta timestamp spa col eight 時間戳轉換 bold pre mes DATEADD(s, Timestamp + 8*3600, ‘1970-01-01 00:00:00‘) 其中Timestamp為10位的時間戳SQL 時間戳轉換為日期

sqlalchemy presto 時間比較

right simple 完整 %20 add 時間 parse sel font 大數據統計時,需要計算開倉訂單減掉經紀商時間差,等於n 小時 或 星期幾的訂單。 presto sql語句如下: select sum(profit) from t_table where

Mysql 和 SQLServer 使用SQL差異比較

username 寫法 兩個 差異比較 表名 eight () col table 查詢前100條數據 #mysql select * from table_name limit 100 ; #sqlserver select top 100 * from table_