SQL時間區間條件查詢三種方法比較

2021-09-23 05:58:11 字數 715 閱讀 3999

最近遇到乙個需要判斷在某一時間段條件的查詢,最開始用的between..and,後來想了想為啥不能用小於、大於,然後又想到用datediff函式先求出兩個時間差再做正負判斷。

後來再了一次測試,資料比較少,大概500條資料,結果如下:

select * from `userleveldetaillog` as u where u.`operatedate` >'2010-03-01' and u.`operatedate`<'2010-04-01';

415 rows fetched (31 ms)

select * from `userleveldetaillog` as u where u.`operatedate` between '2010-03-01' and '2010-04-01';

415 rows fetched (47 ms)

select * from `userleveldetaillog` as u where datediff(u.`operatedate`,'2010-03-01')>0 and  datediff(u.`operatedate`,'2010-04-01')<0;

415 rows fetched (62 ms)

結果在一定程度上說明:

[color=red]還是土方法效率高。。。[/color] 

SQL時間區間條件查詢三種方法比較

最近遇到乙個需要判斷在某一時間段條件的查詢,最開始用的between.and,後來想了想為啥不能用小於 大於,然後又想到用datediff函式先求出兩個時間差再做正負判斷。後來再了一次測試,資料比較少,大概500條資料,結果如下 select from userleveldetaillog as u...

SQL分頁的三種方法

三種sql分頁法 表中主鍵必須為標識列,id int identity 1,1 1.分頁方案一 利用not in和select top分頁 語句形式 select top 10 from testtable where id not in select top 20 id from testtabl...

SQL分頁的三種方法

三種sql分頁法 表中主鍵必須為標識列,id int identity 1,1 1.分頁方案一 利用not in和select top分頁 語句形式 select top 10 from testtable where id not in select top 20 id from testtabl...