2013-02-25 67 views
0

我想從我的表中得到結果,有類型1,2或3,每個事件都有一個日期。我試圖只展示未來的事件並對其進行排序。下面的代碼有點不錯,除了按日期排序之外,它只是根據事件輸入數據庫的順序進行排序。MySQL PHP與未來日期排序

$sql = " SELECT * 
      FROM fitness 
      WHERE type = '3' 
      AND date >= CURRENT_DATE() 
     ORDER BY 'date' ASC"; 

在此先感謝您的幫助!

回答

0

你有'日期'在單引號,這意味着文字字符串日期。

取出單引號。

此外,您不會說您的日期列是否爲DATE,DATETIMETIMESTAMP項目。如果它是一個DATE項目,如果它們中的許多具有相同的日期,則不會有太多區分您的事件。

最後,DATE是保留字。您可能會通過將其用於列名稱而使MySQL感到莫名其妙。如果我是你,我會改變它。

0

嘗試:

$sql = "SELECT * 
     FROM fitness 
     WHERE type = '3' 
     AND date >= CURRENT_DATE() 
     ORDER BY date ASC"; 

公告日期周圍沒有單引號。如果這不起作用,請嘗試以下操作。

$sql = "SELECT * 
     FROM fitness 
     WHERE type = '3' 
     AND `date` >= CURRENT_DATE() 
     ORDER BY `date` ASC"; 

在這種情況下,使用反標字符`而不是單引號。這是因爲「日期」是保留字。