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

Utilisation de LIMIT 1 dans MySQL

 INSERT INTO .. VALUES () LIMIT 1

N'existe pas. J'espère que vous savez combien de VALUES() vous y avez mis !

 INSERT INTO .. SELECT ... LIMIT 1

Existe et est assez utile, et hors sujet puisque la LIMIT est sur le SELECT.

 DELETE ... LIMIT 1
 UPDATE ... LIMIT 1

Extrêmement rarement utile. Soit vous connaissez suffisamment votre base de données pour être certain que votre WHERE correspond à une condition UNIQUE, soit vous ne la connaissez pas, auquel cas vous devriez passer un peu plus de temps à regarder votre base de données et à apprendre SQL.

Mais...

 UPDATE jobs SET owner=me WHERE owner IS NULL ORDER BY job_submit_time LIMIT 1

Peut être extrêmement utile ! Cela crée une file d'attente de travaux presque sans verrouillage, où vous pouvez venir prendre un travail de la file d'attente sans attente, verrouillage ou résolution de conflit. Tout à fait excellent.

 DELETE FROM cache ORDER BY last_update_time LIMIT N

Le cache prend trop de place ? Purger les N lignes les plus anciennes...