0

私はそれを少し失っており、このSQLを正しく考えることができません

私は持っている

テーブル: userid 、 counter 、 date 、

SQL を開始して、過去 24 時間にユーザーがダウンロードしたファイルの数を確認する必要があります

SELECT SUM(counter) FROM download_log WHERE userid = 258 AND date = DATE(NOW())

しかし、それはnullを返しています。最小40ファイルをダウンロード
しました。日付テーブルの日付形式は

2012-05-05 01:59:55

私も試しました、 date = NOW()

同じこと私は何が欠けていますか?

ありがとう!

4

3 に答える 3

1

そうではありませんか:

SELECT SUM(counter) FROM download_log where userid = 258 and date >= DATE_SUB(NOW(), INTERVAL 24 HOUR);

過去 24 時間以内にすべての行を取得する必要があります。

于 2012-07-26T23:41:09.673 に答える
1

次のようなことを試してください:

SELECT SUM(counter) FROM download_log WHERE userid = 258 AND date = CURDATE()

それはうまくいくはずです。

于 2012-07-26T23:28:11.460 に答える
1

という名前の列に日付と時刻を保存していると思いますdateので、うまくいくはずです:

SELECT SUM(counter) FROM download_log WHERE userid = 258 AND 
DATE(`date`)= DATE(NOW())
于 2012-07-26T23:28:54.880 に答える