私の MySQL データベースには、startdate
とenddate
フィールドがあります。PHP の今日の日付を使用して、今日の日付よりstartdate
前で今日の日付よりenddate
後の行のみを選択する方法はありますか?
質問する
211 次
5 に答える
3
試す
WHERE startdate >= todays_date AND enddate <= todaysdate
また
WHERE todays_date BETWEEN startdate and enddate
PHP を使用して現在の日付を取得するのではなく、build in MySQL 関数を使用しますCURDATE()
。
WHERE startdate >= CURDATE() AND enddate <= CURDATE()
また
WHERE CURDATE() BETWEEN startdate and enddate
于 2012-06-15T13:45:03.943 に答える
3
試してくださいBETWEEN
:
WHERE today between START_DATE AND END_DATE
于 2012-06-15T13:45:08.570 に答える
1
SQL の between 句を利用できます。
$query = "SELECT colList FROM table WHERE CURDATE() BETWEEN startdate AND enddate";
于 2012-06-15T13:45:27.047 に答える
0
私のPHPとSQLは錆びていますが、 $date が今日の日付を入れた変数である場合、次のように動作するはずです。
$results = mysqli_query( $conn,
"select * from yourTable where startdate<'{$date}' AND enddate>'{$date}'" );
于 2012-06-15T13:54:17.707 に答える
0
あなたはコードを提供していないので、データベースの開始日と終了日にdatetime
データ型 があると仮定しています。
$today = date("Y-m-d H:i:s")
のようなものを生成します。これはMysqlが2012-06-14 14:46:00
理解する形式であるため、クエリで使用できます
select * from 'your-table' where $today BETWEEN 'start_date' AND 'END_DATE'
ありがとう
于 2012-06-15T13:49:28.363 に答える