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

Używanie krotek w klauzuli ORACLE IN i warunku dla jednego elementu w krotce

Szukasz czegoś takiego?

select *
from MY_TABLE
where (id, name) in ((1,'new'), (2, 'old')) and
      date between effectiveDate and termDate

Spowoduje to wyszukanie par na liście, a następnie sprawdzenie dat pomiędzy zakresem dat.

EDYCJA:

Myślę, że chcesz podzielić to na wiele klauzul, po jednej dla każdego zestawu wartości:

where (id = 1 and name = 'new' and date between eff1 and term1) or
      (id = 2 and name = 'old' and date between eff2 and term2) or
      . . .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Przejrzyj listę kolumn tabeli i zastosuj do nich zapytanie

  2. Czy globalnie podzielony indeks jest lepszy (szybszy) niż indeks niepartycjonowany?

  3. Polecenie SQL nie zostało poprawnie zakończone?

  4. Jak rozpoznać, który plik tnsnames.ora jest używany przez wywołanie .net?

  5. Czy naprawdę lepiej jest używać znormalizowanych tabel?