Mysql
 sql >> Base de données >  >> RDS >> Mysql

Est-il possible d'insérer une nouvelle ligne en haut de la table MySQL ?

L'ordre dans lequel les résultats sont renvoyés lorsqu'il n'y a pas de clause ORDER BY dépend du RDBM. Dans le cas de MySQL, ou du moins de la plupart des moteurs, si vous ne spécifiez pas explicitement l'ordre, il sera croissant, des entrées les plus anciennes aux nouvelles. L'emplacement "physique" de la ligne n'a pas d'importance. Je ne sais pas si tous les moteurs mysql fonctionnent de cette façon. C'est-à-dire que dans PostgreSQL, l'ordre "par défaut" affiche d'abord les lignes les plus récemment mises à jour. C'est peut-être ainsi que fonctionnent certains moteurs MySQL.

Quoi qu'il en soit, le fait est que - si vous voulez que les résultats soient ordonnés - spécifiez toujours l'ordre de tri, ne dépendez pas simplement de quelque chose par défaut qui semble fonctionner. Dans votre cas, vous voulez quelque chose de trivial - vous voulez que les utilisateurs soient classés par ordre décroissant, alors utilisez simplement :

SELECT * FROM users ORDER BY id DESC