2016-03-02 37 views
1

我有一個入住/退房系統,它爲每次入住時寫入我表中的新行,並在人員結帳時更新表(如checkedout = 1)顯示最近一次插入或最後一次更新的行

現在我正在創建一個總是顯示最新檢查的新網站。我通過輪詢並將最高ID存儲在該頁面上的變量中來完成此操作。在輪詢中,我搜索條目>我存儲的ID。迄今爲止,它運行良好。

但現在我想擴展它,並顯示最新檢查的人或最近檢出的人。我怎樣才能得到我表中的最後一個「更新」行?

+0

列順序由DESC? – aldrin27

回答

2

您可以爲ex添加一列。類型爲datetime的date_checked,並在發生任何事情時進行更新。

之後,只需選擇該列。

+0

對!有時最簡單的解決方案是最難想象的:D謝謝! –

+0

使用'date_checked TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'創建此字段,MySQL將爲您執行幾乎所有的工作。 – syck

2

用mysql函數調用mysqli_insert_id(),它會給你最後插入表

+0

這不會幫助更新行。我正在使用這個新的條目。 –

+0

然後在sql store更新日期和時間下使用稱爲timestamp的數據類型。同時獲取最新時間和日期的檢查,然後獲取記錄。 –

1

的主鍵值試試這個:

SET @update_id := 0; 
UPDATE some_table SET column_name = 'value', id = (SELECT @update_id := id) 
WHERE some_other_column = 'blah' LIMIT 1; 
SELECT @update_id; 

更多Click Here

相關問題