Oracle
 sql >> Baza danych >  >> RDS >> Oracle

SQL w kontra skrzyżowanie

W Oracle, zakładając (USER, HOBBY) jest unikalny, możesz użyć GROUP BY zapytanie:

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

Dzięki temu Oracle wykona co najwyżej jedno przejście danych, podczas gdy INTERSECT traktowałby każde zapytanie osobno i dlatego potrzebowałby dwóch przejść.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle alter table niewystarczające uprawnienia

  2. Oracle — nie można użyć znaku * z inną kolumną w klauzuli select

  3. Oracle PLSQL ustawia kursor ze zmiennej

  4. Jak mogę umieścić IF ELSE CONDITION w zapytaniu Oracle?

  5. Dane wyjściowe Oracle różnią się w SQL Developer i Excel