Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Menggunakan tupel dalam klausa ORACLE IN dan kondisi untuk satu elemen dalam tupel

Apakah Anda mencari sesuatu seperti ini?

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

Ini mencari pasangan dalam daftar dan kemudian memeriksa tanggal di antara rentang tanggal.

EDIT:

Saya pikir Anda ingin memecahnya menjadi beberapa klausa, satu untuk setiap rangkaian nilai:

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. IN vs ATAU dari Oracle, mana yang lebih cepat?

  2. Oracle setara dengan java System.currentTimeMillis()?

  3. ORA-00947 :Nilai Tidak Cukup

  4. COSH() Fungsi di Oracle

  5. Oracle SQL -- hapus sebagian duplikat dari string