sql >> Database teknologi >  >> RDS >> Mysql

BESTIL EFTER tilstand

UNION betyder UNION DISTINCT, og dette er relativt langsomt, da det vil tjekke for dubletter, selvom der ikke vil være nogen. Du vil have UNION ALLE:

SELECT *, 0 AS head FROM foo WHERE id IN (1,2,3) 
UNION ALL
SELECT *, 1 AS head FROM foo WHERE id NOT IN (1,2,3)
ORDER BY head, created_date

Jeg kan forestille mig, at der efter denne ændring ikke er meget forskel i ydeevne mellem de tre forespørgsler. Den bedste måde at være sikker på er at måle det.



  1. Markørbaseret postdatatype med markør, der returnerer flere værdier i Oracle-databasen

  2. Sikker måde at opbevare krypteringsnøgler på - PHP

  3. forkert kolonnespecifikation for kolonne

  4. MySQL fuldtekstsøgning, hvorfor får jeg forkerte argumenter til MATCH