Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Fungsi kondisional
catatan
Untuk melihat integrasi sumber AWS data mana yang mendukung perintah SQL ini, lihat. Perintah dan OpenSearch fungsi SQL yang didukung
Fungsi | Deskripsi |
---|---|
menyatu (expr1, expr2,...) | Mengembalikan argumen non-null pertama jika ada. Jika tidak, null. |
jika (expr1, expr2, expr3) | Jika expr1 mengevaluasi ke true, maka returnexpr2 ; jika tidak kembaliexpr3 . |
ifnull (expr1, expr2) | Mengembalikan expr2 expr1 jika nol, atau expr1 sebaliknya. |
nanvl (expr1, expr2) | Kembali expr1 jika bukan NaN, atau expr2 sebaliknya. |
nullif (expr1, expr2) | Mengembalikan null jika expr1 sama denganexpr2 , atau expr1 sebaliknya. |
nvl (expr1, expr2) | Mengembalikan expr2 expr1 jika nol, atau expr1 sebaliknya. |
nvl2 (expr1, expr2, expr3) | Mengembalikan expr2 expr1 jika tidak null, atau expr3 sebaliknya. |
KASUS KETIKA expr1 KEMUDIAN expr2 [KETIKA expr3 KEMUDIAN expr4] * [ELSE expr5] AKHIR | When expr1 = true, returnexpr2 ; else when expr3 = true, returnexpr4 ; else kembaliexpr5 . |
Contoh
-- coalesce SELECT coalesce(NULL, 1, NULL); +-----------------------+ |coalesce(NULL, 1, NULL)| +-----------------------+ | 1| +-----------------------+ -- if SELECT if(1 < 2, 'a', 'b'); +-------------------+ |(IF((1 < 2), a, b))| +-------------------+ | a| +-------------------+ -- ifnull SELECT ifnull(NULL, array('2')); +----------------------+ |ifnull(NULL, array(2))| +----------------------+ | [2]| +----------------------+ -- nanvl SELECT nanvl(cast('NaN' as double), 123); +-------------------------------+ |nanvl(CAST(NaN AS DOUBLE), 123)| +-------------------------------+ | 123.0| +-------------------------------+ -- nullif SELECT nullif(2, 2); +------------+ |nullif(2, 2)| +------------+ | NULL| +------------+ -- nvl SELECT nvl(NULL, array('2')); +-------------------+ |nvl(NULL, array(2))| +-------------------+ | [2]| +-------------------+ -- nvl2 SELECT nvl2(NULL, 2, 1); +----------------+ |nvl2(NULL, 2, 1)| +----------------+ | 1| +----------------+ -- when SELECT CASE WHEN 1 > 0 THEN 1 WHEN 2 > 0 THEN 2.0 ELSE 1.2 END; +-----------------------------------------------------------+ |CASE WHEN (1 > 0) THEN 1 WHEN (2 > 0) THEN 2.0 ELSE 1.2 END| +-----------------------------------------------------------+ | 1.0| +-----------------------------------------------------------+ SELECT CASE WHEN 1 < 0 THEN 1 WHEN 2 > 0 THEN 2.0 ELSE 1.2 END; +-----------------------------------------------------------+ |CASE WHEN (1 < 0) THEN 1 WHEN (2 > 0) THEN 2.0 ELSE 1.2 END| +-----------------------------------------------------------+ | 2.0| +-----------------------------------------------------------+ SELECT CASE WHEN 1 < 0 THEN 1 WHEN 2 < 0 THEN 2.0 END; +--------------------------------------------------+ |CASE WHEN (1 < 0) THEN 1 WHEN (2 < 0) THEN 2.0 END| +--------------------------------------------------+ | NULL| +--------------------------------------------------+