J'ai une table avec plusieurs enregistrements. Il y a un champ id. J'aimerais sélectionner l'enregistrement avec l'identifiant le plus récent (c'est-à-dire l'identifiant le plus élevé).
Des idées?
SELECT *
FROM table_name
ORDER BY id DESC
LIMIT 1
Commande utilisateur par ordre desc
:
select * from t
order by id desc
limit 1
Vous pouvez aussi faire quelque chose comme ça:
SELECT tb1.* FROM Table tb1 WHERE id = (SELECT MAX(tb2.id) FROM Table tb2);
C'est utile lorsque vous voulez faire des jointures.
SELECT MAX("field name") AS ("primary key") FROM ("table name")
exemple:
SELECT MAX(brand) AS brandid FROM brand_tbl
SELECT *
FROM table
ORDER BY id DESC
LIMIT 0, 1
J'ai utilisé les deux suivants:
1 - select id from table_name where id = (select MAX(id) from table_name)
2 - select id from table_name order by id desc limit 0, 1
SELECT * FROM your_table ORDER BY id ASC LIMIT 0, 1
La ASC
renverra les résultats dans l'ordre croissant, ce qui vous laissera le dernier ou le plus récent enregistrement. La contrepartie DESC
fera exactement le contraire. C'est-à-dire, retourne le plus ancien enregistrement.