sql >> Database >  >> RDS >> Oracle

SQL in vs intersectie

In Oracle, ervan uitgaande dat (USER, HOBBY) uniek is, kunt u een GROUP BY . gebruiken vraag:

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

Dit zorgt ervoor dat Oracle maximaal één keer gegevens doorgeeft, terwijl INTERSECT elke query afzonderlijk zou behandelen en daarom twee doorgangen nodig zou hebben.



  1. PL/SQL - Voorbeeld van toepassingsfout verhogen

  2. Hoe toegang te krijgen tot de procedure die een reeks refcursor retourneert van PostgreSQL in Java?

  3. PHP PDO voorbereide verklaring -- MySQL LIKE query

  4. Krijg rij met de hoogste of laagste waarde van een GROUP BY