2012-02-15 77 views
-1

如何在PHP中將此MySQL查詢更改爲僅顯示數據庫中名爲OpenHouseDate的日期列是當前日期還是前進的所有列表?PHP按日期查詢

$sql_query = "SELECT * FROM listings ORDER BY RAND()"; 
+0

且不說http://www.paperplanes.de/2008/4/24/mysql_nonos_order_by_rand.html – Mike 2012-02-15 16:27:12

回答

1

如果OpenHouseDate是「日期」類型的,那麼你可以使用以下命令:

$sql_query = "SELECT * FROM listings WHERE OpenHouseDate <= CURDATE(); 

如果OpenHouseDate是「日期時間」類型,那麼你可以使用如下:

$sql_query = "SELECT * FROM listings WHERE OpenHouseDate <= NOW(); 

如果OpenHouseDate是'整數' 類型的,那麼你可以使用以下命令:

$sql_query = "SELECT * FROM listings WHERE OpenHouseDate <= UNIX_TIMESTAMP(NOW()); 

MySQL Date/Time Reference

2
$sql_query = "SELECT * FROM listings where OpenHouseDate >= current_date ORDER BY RAND()"; 
+0

'WHERE'錯過。 – a1ex07 2012-02-15 16:17:27

+0

謝謝。修正了。 – 2012-02-15 16:19:15

1
SELECT * FROM listings WHERE DATE(OpenHouseDate) = DATE(NOW()) ORDER BY RAND() 
+1

Order By子句將需要移動到查詢結尾 – 2012-02-15 16:17:26

+0

謝謝@AuthmanApatira,錯過了! – 2012-02-15 16:18:10

+0

我犯了同樣的錯誤,就像10分鐘前,在一個現場sys noless = P – 2012-02-15 16:19:16