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

Oracle optymalizuje OR + IN do OR + EXISTS, co jest bardzo powolne

Możesz przekształcić swoje podzapytanie w sprzężenie:

SELECT * 
FROM application_log log
    LEFT JOIN transaction transaction ON log.tag_value=transaction.id AND transaction.sale_id = 'xxx'
WHERE log.tag_value = 'xxx' OR transaction.id IS NOT NULL
ORDER BY log.log_date ASC;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. jak podzielić kolumny w wyniku zapytania w bazie danych Oracle

  2. Zaktualizuj całą tabelę za pomocą numeru sekwencyjnego w Oracle

  3. Czy istnieje oficjalna rekomendacja Oracle dotycząca używania jawnych złączeń ANSI JOIN w porównaniu ze złączeniami niejawnymi?

  4. Czy istnieje sposób na ulepszenie zapytania MERGE?

  5. Nie znaleziono regionu strefy czasowej