

 Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai Patch 198. Python yang ada UDFs akan terus berfungsi hingga 30 Juni 2026. Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Fungsi NULLIF
<a name="r_NULLIF_function"></a>

## Sintaksis
<a name="r_NULLIF_function-synopsis"></a>

Ekspresi NULLIF membandingkan dua argumen dan mengembalikan null jika argumennya sama. Jika mereka tidak sama, argumen pertama dikembalikan. Ekspresi ini adalah kebalikan dari ekspresi NVL atau COALESCE.

```
NULLIF ( expression1, expression2 )
```

## Pendapat
<a name="r_NULLIF_function-arguments"></a>

 *ekspresi1, ekspresi2*   
Kolom target atau ekspresi yang dibandingkan. Tipe pengembalian sama dengan tipe ekspresi pertama. Nama kolom default hasil NULLIF adalah nama kolom dari ekspresi pertama.

## Contoh
<a name="r_NULLIF_function-examples"></a>

Dalam contoh berikut, query mengembalikan string `first` karena argumen tidak sama.

```
SELECT NULLIF('first', 'second');

case
-------
first
```

Dalam contoh berikut, query kembali `NULL` karena argumen literal string sama.

```
SELECT NULLIF('first', 'first');

case
-------
NULL
```

Dalam contoh berikut, query kembali `1` karena argumen integer tidak sama.

```
SELECT NULLIF(1, 2);

case
-------
1
```

Dalam contoh berikut, query kembali `NULL` karena argumen integer sama.

```
SELECT NULLIF(1, 1);

case
-------
NULL
```

Dalam contoh berikut, query mengembalikan null ketika nilai LISTID dan SALESID cocok:

```
select nullif(listid,salesid), salesid
from sales where salesid<10 order by 1, 2 desc;

listid  | salesid
--------+---------
     4  |       2
     5  |       4
     5  |       3
     6  |       5
     10 |       9
     10 |       8
     10 |       7
     10 |       6
        |       1
(9 rows)
```

Anda dapat menggunakan NULLIF untuk memastikan bahwa string kosong selalu dikembalikan sebagai nol. Dalam contoh di bawah ini, ekspresi NULLIF mengembalikan nilai null atau string yang berisi setidaknya satu karakter.

```
insert into category
values(0,'','Special','Special');

select nullif(catgroup,'') from category
where catdesc='Special';

catgroup
----------
null
(1 row)
```

NULLIF mengabaikan trailing blank. Jika string tidak kosong tetapi berisi kosong, NULLIF masih mengembalikan null:

```
create table nulliftest(c1 char(2), c2 char(2));

insert into nulliftest values ('a','a ');

insert into nulliftest values ('b','b');


select nullif(c1,c2) from nulliftest;
c1
------
null
null
(2 rows)
```