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

NULLIF() Fungsi di Oracle

Di Oracle Database, NULLIF() fungsi membandingkan dua ekspresi, dan mengembalikan null jika kedua ekspresi sama. Jika tidak sama, maka fungsi mengembalikan ekspresi pertama.

Sintaks

Sintaksnya seperti ini:

NULLIF(expr1, expr2)

Contoh

Berikut ini contoh untuk didemonstrasikan:

SELECT NULLIF(5, 7)
FROM DUAL;

Hasil:

5

Dalam hal ini, argumennya tidak sama, sehingga fungsi mengembalikan argumen pertama.

Inilah yang terjadi jika kedua argumen sama:

SET NULL 'null';
SELECT NULLIF(7, 7)
FROM DUAL;

Hasil:

null

Kita dapat melihat bahwa NULLIF() mengembalikan null ketika kedua argumen sama

Mengenai baris pertama SET NULL 'null'; , saya menambahkannya agar sesi SQLcl saya mengembalikan null setiap kali hasilnya nol.

Secara default, SQLcl dan SQL*Plus mengembalikan ruang kosong setiap kali null terjadi sebagai akibat dari SQL SELECT penyataan.

Namun, Anda dapat menggunakan SET NULL untuk menentukan string berbeda yang akan dikembalikan. Di sini saya menetapkan bahwa string null harus dikembalikan.

Dibandingkan dengan CASE

NULLIF() fungsinya setara dengan CASE berikut ini ekspresi:

CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END

Jumlah Argumen Tidak Valid

Memanggil fungsi tanpa meneruskan argumen apa pun menghasilkan kesalahan:

SELECT NULLIF()
FROM DUAL;

Hasil:

SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"

Dan memberikan terlalu banyak argumen juga menyebabkan kesalahan:

SELECT NULLIF(1, 2, 3)
FROM DUAL;

Hasil:

SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana saya bisa mengakses Oracle dari Python?

  2. Mengapa saya tidak bisa memasukkan tanggal ini ke dalam tabel menggunakan sql?

  3. Mengapa menggunakan klausa JOIN versus kondisi WHERE?

  4. Utilitas ADODFCMP

  5. Fungsi DBTIMEZONE di Oracle