1. 程式人生 > >數據庫SQL語句查詢指定時間段內的數據

數據庫SQL語句查詢指定時間段內的數據

between 數據 spa and -m 指定 timestamp mes font

【摘要】有的時候,我們需要查詢數據庫某段時間之間的數據,比如2016年5月1號到到5月3號之間用戶註冊數量(特殊節假日期間)等。那麽用SQL語句如何實現呢?

首先,數據表中的存時間的字段比如是addtime可能是時間戳(varchar),也可能是用timestamp類型表示,如果是時間戳格式當然好辦,如果是timestamp格式:YYYY-MM-DD HH:II:SS這個格式,如2016-05-01 00:00:00這種格式的SQL語句怎麽表示?有下面兩張方式:

(1)第一種方法,使用關鍵字between...and...,SQL語句如下:

  1. select 需要查詢的字段名稱 from 表名 where 字段名(表示時間的) between 時間1(如:‘2016-5-1 00:00:00‘) and 時間2(例如:‘2016-5-3 00:00:00‘)
  2. 例如下面:(查詢2016年5月1號到3號user表中的name,age字段的數據)
  3. select name,age from user where addtime between ‘2016-5-1 00:00:00‘ and ‘2016-5-3 00:00:00‘;

(2)第二種方法,使用比較運算符的方式,即大於號小於號這種方式:

  1. select name,age from where addtime > ‘2015-5-1 00:00:00‘ and addtime < ‘2016-5-3 00:00:00‘

可以試試,之前我也從來沒有居然timestamp格式的時間也能用比較運算符查詢,我的解決方案是添加一個字段,用時間戳來描述。現在知道可以用這種方式是不是很酷。

數據庫SQL語句查詢指定時間段內的數據