0

たくさんの行があるデータベースがあります。列の1つは「日付」で、各行の日付は次の形式になっています。MM / DD / YYYY H:MM PM / AM

日付が最も最近の日付である行を選択するPHPを作成するにはどうすればよいですか。つまり、明日の日付、今日の日付、および昨日の日付がある場合、日付が昨日の行を選択します。

私はすでにデータベースに接続しています:

mysql_connect('localhost','username','pass');
mysql_select_db('db_name');

これを取得するためのクエリを作成するにはどうすればよいですか?

4

2 に答える 2

2

次のクエリのバリエーションを使用して、PHPではなくSQLでフィルタリングを実行します。

SELECT *
FROM myTable
WHERE theDate < CURDATE()
ORDER BY theDate DESC
LIMIT 1

これにより、過去のすべての行が選択され(theDate < CURDATE())、時系列の逆順で並べ替えられ(ORDER BY theDate DESC)、最初のレコードが取得されます(LIMIT 1)。

于 2012-11-04T05:56:10.700 に答える
0

データベースにクエリを実行するときは、ORDER BY date DESC LIMIT 1

これにより、最新の結果のみが返されるため、現在の日付に最も近い結果が返されます。(これは、将来の日付のエントリを入力しない場合にのみ機能します)

于 2012-11-04T05:57:04.893 に答える