0

次の表を取得しました。

ここに画像の説明を入力

そして、データベースからユーザーごと、日付ごとに最も早い時間を取得する必要があります。だから私は次のクエリを持っています:

SELECT * FROM `taskdate_user` WHERE `taskdate_time` IN
(
    SELECT min(`taskdate_time`)
    FROM `taskdate_user`
    WHERE `taskdate_time` BETWEEN '2013-01-21' AND '2013-01-28'
    GROUP BY  date_format(taskdate_time, "%Y-%m-%d"), user_id
)
ORDER BY `taskdate_time` ASC

その結果:

ここに画像の説明を入力

double '2013-01-21' を返すのはなぜですか? そして、それは他の日付とうまくいきます。

私が使用しているデータベースは次のとおりです。

MySQL バージョン: 5.1.66-0ubuntu0.10.04.3 (PHP 拡張機能 MySQLi 経由)

4

1 に答える 1

0

また、user_id でグループ化しているため、その日付には 2 つのエントリがあります。

于 2013-01-28T14:23:38.797 に答える