sql >> Databáze >  >> RDS >> Oracle

SQL vs průnik

V Oracle za předpokladu (USER, HOBBY) je jedinečný, můžete použít GROUP BY dotaz:

SELECT user
  FROM user_hobby
 WHERE hobby IN ('piano', 'sport')
 GROUP BY user
HAVING COUNT(*) = 2

Díky tomu bude Oracle provádět maximálně jeden průchod dat, zatímco INTERSECT by zpracovával každý dotaz samostatně, a proto by potřeboval dva průchody.



  1. MySQL:vyberte * z tabulky, kde je možný col IN (null, ) bez OR

  2. Group mysql výsledky ve skupinách po čtyřech

  3. Chyby T-SQL, úskalí a doporučené postupy – poddotazy

  4. Získání podobné zeměpisné délky a šířky z databáze