2017-10-12 65 views
-4

如何獲取包含max(列)的完整行。
例子:
我有一個表像這樣
mySQL獲取具有列的最大值的行

+----+---------------+------+---------------------+ 
| id | title   | c | update    | 
+----+---------------+------+---------------------+ 
| 1 | John S.  | 15 | 2017-09-15 09:04:13 | 
| 1 | John S.  | 21 | 2017-09-15 09:04:29 | 
| 1 | John S.  | 22 | 2017-09-16 01:55:26 | 
| 43 | Cristover Co. | 15 | 2017-09-17 14:11:43 | 
| 43 | PeterSberg R. | 16 | 2017-09-17 15:12:30 | 
| 43 | Cristover Co. | 19 | 2017-09-17 21:45:10 | 
+----+---------------+------+---------------------+ 

現在我想選擇包含最大(更新)的行。預期結果:

+----+---------------+------+---------------------+ 
| id | title   | c | update    | 
+----+---------------+------+---------------------+ 
| 43 | Cristover Co. | 19 | 2017-09-17 21:45:10 | 
+----+---------------+------+---------------------+ 
+3

好的。但是,首先告訴我們你所嘗試過的是什麼? –

+4

更新是列的錯誤名稱。 –

+0

「取」你的意思是「選擇」?或者你選擇了那些行,但是使用'php'或者你想選擇的行只有最大更新? –

回答

0

首先,你不應該命名列update,選擇其他的名字,讓我們說 「date_of_update」

如果你想要選擇只有最新更新的行,你可以簡單地使用這樣的東西:

SELECT * FROM table_name ORDER BY date_of_update DESC LIMIT 1. 

這會給你只有一行與最大日期!

+0

像一個魅力工作感謝 – Omda

0

試試這個

SELECT * FROM table_name 
    WHERE table_name.update = 
    (SELECT max(table_name.update) from table_name)