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

Bagaimana cara membuat indeks unik pada bidang dengan kemungkinan nilai nol (Oracle 11g)?

Anda hanya ingin menerapkan keunikan pada baris di mana keduanya UNIQUE_VALUE dan UNIQUE_GROUP_ID tidak nol. Untuk melakukan ini, Anda dapat menggunakan indeks berbasis fungsi yang unik:

CREATE UNIQUE INDEX func_based_index ON the_table
  (CASE WHEN unique_value IS NOT NULL
         AND unique_group_id IS NOT NULL
        THEN UNIQUE_VALUE || ',' || UNIQUE_GROUP_ID
   END);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara mengetahui nomor baris, nama prosedur di PL/SQL jika terjadi kesalahan

  2. mengeksekusi `EXECUTE IMMEDIATE` Pernyataan Oracle Mendapatkan Kesalahan

  3. Rails 3.0.3 - Oracle_enhanced tidak berfungsi

  4. Oracle sql Kurangi antara dua tanggal

  5. Oracle trimspool hanya membuntuti kosong (bukan kosong di depan)