web-dev-qa-db-ja.com

mysql:2つの日時間のレコード数を取得します

MySQLに問題があります。 2つの日時エントリ間のレコード数を取得したい。
例えば:
「created」という名前のテーブルに、datetimeデータ型の列があります。

「今日の午前4時30分」から「現在の日付時刻」までの日時に作成されたレコードをカウントします。

MySQLの機能をいくつか試しましたが、まだうまくいきませんでした。

これで私を助けてもらえますか?ありがとう。

38
gautamlakum

かもしれない:

_SELECT count(*) FROM `table` 
where 
    created_at>='2011-03-17 06:42:10' and created_at<='2011-03-17 07:42:50';
_

またはbetweenを使用します:

_SELECT count(*) FROM `table` 
where 
    created_at between '2011-03-17 06:42:10' and '2011-03-17 07:42:50';
_

必要に応じて日時を変更できます。 curdate()またはnow()を使用して、目的の日付を取得できます。

73
Harry Joy
select * from yourtable where created < now() and created > '2011-04-25 04:00:00'
6
Wes
select * from yourtable 
   where created < now() 
     and created > concat(curdate(),' 4:30:00 AM') 
5
Shakti Singh