2017-10-12 16 views
-4

Comment puis-je récupérer la ligne complète qui contient la colonne max.
Exemple:
J'ai une table comme celui-ci
mySQL Récupère la ligne qui a la valeur Max pour une colonne

+----+---------------+------+---------------------+ 
| 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 | 
+----+---------------+------+---------------------+ 

Maintenant, je veux choisir la ligne qui contient au maximum (mise à jour). Résultat attendu:

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

ok. Mais dites-nous d'abord ce que vous avez essayé? –

+4

La mise à jour est un nom incorrect pour une colonne. –

+0

Par "chercher", vous voulez dire "sélectionner"? ou avez-vous sélectionné ces lignes, mais en utilisant 'php' ou quelque chose que vous voulez sélectionner seulement la ligne avec la mise à jour max? –

Répondre

0

D'abord, vous ne devriez pas le nom de votre colonne update, choisir un autre nom, disons que "date_of_update"

Si vous voulez pour sélectionner uniquement la ligne avec la mise à jour la plus récente, vous pouvez simplement utiliser quelque chose comme ceci:

SELECT * FROM table_name ORDER BY date_of_update DESC LIMIT 1. 

Ceci vous donnera seulement une rangée avec la date maximum!

+0

a travaillé comme un charme grâce – Omda

0

essayer celui-ci

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