sql >> Databasteknik >  >> RDS >> Mysql

MYSQL-fråga WHERE IN vs OR

Använd IN.

IN kommer att använda ett index.

OR kommer (afaik) inte att använda ett index.

Dessutom, och denna punkt är inte att nysa åt, IN-versionen:

  • använder mindre kod
  • är lättare att underhålla
  • är lättare att förstå

Enbart av dessa skäl skulle jag vara beredd att lida lite prestanda för att få kodkvalitet, men du får faktiskt prestanda också.



  1. MySQL-fråga som hittar värden i en kommaseparerad sträng

  2. Oracle tar inte bort markörer efter stängning av resultatuppsättningen

  3. MySQL:Kan inte skapa tabell (errnr:150)

  4. Hur flyttar man kolumner i en MySQL-tabell?