Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Operator
Operator berikut dapat digunakan dalam klausa SELECT dan WHERE.
Operator DAN
Mengembalikan Boolean hasil. Melakukan operasi AND logis. Mengembalikan true jika operan kiri dan kanan benar. Jika tidak, mengembalikan false. BooleanOperan atau operan string “true” atau “false” yang tidak peka huruf besar-kecil diperlukan.
Sintaks:
.expression AND
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Boolean |
Boolean |
Boolean. Benar jika kedua operan benar. Kalau tidak, salah. |
String/Boolean |
String/Boolean |
Jika semua string “benar” atau “salah” (case insensitive), mereka dikonversi ke Boolean dan diproses secara normal sebagai. |
| Nilai lainnya | Nilai lainnya | Undefined. |
ATAU operator
Mengembalikan Boolean hasil. Melakukan operasi OR logis. Mengembalikan true jika operan kiri atau kanan benar. Jika tidak, mengembalikan false. BooleanOperan atau operan string “true” atau “false” yang tidak peka huruf besar-kecil diperlukan.
Sintaks:
.expression OR
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Boolean |
Boolean |
Boolean. Benar jika salah satu operan benar. Kalau tidak, salah. |
String/Boolean |
String/Boolean |
Jika semua string “benar” atau “salah” (case insensitive), mereka dikonversi ke Boolean dan diproses secara normal sebagai. |
| Nilai lainnya | Nilai lainnya | Undefined. |
BUKAN operator
Mengembalikan Boolean hasil. Melakukan operasi NOT logis. Mengembalikan true jika operandnya false. Jika tidak, mengembalikan true. BooleanOperan atau operan string “true” atau “false” yang tidak peka huruf besar-kecil diperlukan.
Sintaks: NOT .expression
| Operan | Output |
|---|---|
Boolean |
Boolean. Benar jika operan salah. Kalau tidak, benar. |
String |
Jika string adalah “true” atau “false” (case insensitive), string dikonversi ke nilai Boolean yang sesuai, dan nilai yang berlawanan dikembalikan. |
| Nilai lainnya | Undefined. |
Operator IN
Mengembalikan Boolean hasil. Anda dapat menggunakan operator IN dalam klausa WHERE untuk memeriksa apakah nilai cocok dengan nilai dalam array. Ini mengembalikan true jika kecocokan ditemukan, dan false sebaliknya.
Sintaks:
.expression IN
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int/Decimal/String/Array/Object |
Array |
Benar jika Object elemen Integer DecimalString/Array//ditemukan dalam array. Kalau tidak, salah. |
Contoh:
SQL: "select * from 'a/b' where 3 in arr" JSON: {"arr":[1, 2, 3, "three", 5.7, null]}
Dalam contoh ini, klausa kondisi where 3 in arr akan dievaluasi menjadi true karena 3 hadir dalam array bernamaarr. Oleh karena itu dalam pernyataan SQL, select * from 'a/b' akan dieksekusi. Contoh ini juga menunjukkan bahwa array bisa heterogen.
Operator EXISTS
Mengembalikan Boolean hasil. Anda dapat menggunakan operator EXISTS dalam klausa kondisional untuk menguji keberadaan elemen dalam subquery. Ini mengembalikan true jika subquery mengembalikan satu atau lebih elemen dan false jika subquery tidak mengembalikan elemen.
Sintaks:
.expression
Contoh:
SQL: "select * from 'a/b' where exists (select * from arr as a where a = 3)" JSON: {"arr":[1, 2, 3]}
Dalam contoh ini, klausa kondisi where exists (select * from arr as a
where a = 3) akan dievaluasi menjadi true karena 3 hadir dalam array bernamaarr. Oleh karena itu dalam pernyataan SQL, select * from 'a/b' akan dieksekusi.
Contoh:
SQL: select * from 'a/b' where exists (select * from e as e where foo = 2) JSON: {"foo":4,"bar":5,"e":[{"foo":1},{"foo":2}]}
Dalam contoh ini, klausa kondisi where exists (select * from e as e
where foo = 2) akan dievaluasi menjadi true karena array e dalam objek JSON berisi objek{"foo":2}. Oleh karena itu dalam pernyataan SQL, select * from 'a/b' akan dieksekusi.
Operator >
Mengembalikan Boolean hasil. Mengembalikan true jika operan kiri lebih besar dari operan kanan. Kedua operan diubah menjadi aDecimal, dan kemudian dibandingkan.
Sintaks: .expression >
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int/Decimal |
Int/Decimal |
Boolean. Benar jika operan kiri lebih besar dari operan kanan. Kalau tidak, salah. |
String/Int/Decimal |
String/Int/Decimal |
Jika semua string dapat dikonversi keDecimal, makaBoolean. Mengembalikan true jika operan kiri lebih besar dari operan kanan. Kalau tidak, salah. |
| Nilai lainnya | Undefined. |
Undefined. |
>= operator
Mengembalikan Boolean hasil. Mengembalikan true jika operan kiri lebih besar dari atau sama dengan operan kanan. Kedua operan diubah menjadi aDecimal, dan kemudian dibandingkan.
Sintaks: .expression >=
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int/Decimal |
Int/Decimal |
Boolean. Benar jika operan kiri lebih besar dari atau sama dengan operan kanan. Kalau tidak, salah. |
String/Int/Decimal |
String/Int/Decimal |
Jika semua string dapat dikonversi keDecimal, makaBoolean. Mengembalikan true jika operan kiri lebih besar dari atau sama dengan operan kanan. Kalau tidak, salah. |
| Nilai lainnya | Undefined. |
Undefined. |
Operator <
Mengembalikan Boolean hasil. Mengembalikan true jika operan kiri kurang dari operan kanan. Kedua operan diubah menjadi aDecimal, dan kemudian dibandingkan.
Sintaks: .expression <
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int/Decimal |
Int/Decimal |
Boolean. Benar jika operan kiri kurang dari operan kanan. Kalau tidak, salah. |
String/Int/Decimal |
String/Int/Decimal |
Jika semua string dapat dikonversi keDecimal, makaBoolean. Mengembalikan true jika operan kiri kurang dari operan kanan. Kalau tidak, salah. |
| Nilai lainnya | Undefined |
Undefined |
<= operator
Mengembalikan Boolean hasil. Mengembalikan true jika operan kiri kurang dari atau sama dengan operan kanan. Kedua operan diubah menjadi aDecimal, dan kemudian dibandingkan.
Sintaks: .expression <=
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int/Decimal |
Int/Decimal |
Boolean. Benar jika operan kiri kurang dari atau sama dengan operan kanan. Kalau tidak, salah. |
String/Int/Decimal |
String/Int/Decimal |
Jika semua string dapat dikonversi keDecimal, makaBoolean. Mengembalikan true jika operan kiri kurang dari atau sama dengan operan kanan. Kalau tidak, salah. |
| Nilai lainnya | Undefined |
Undefined |
Operator <>
Mengembalikan Boolean hasil. Mengembalikan nilai true jika operan kiri dan kanan tidak sama. Jika tidak, mengembalikan false.
Sintaks:
.expression <>
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int |
Int |
Benar jika operan kiri tidak sama dengan operan kanan. Kalau tidak, salah. |
Decimal |
Decimal |
Benar jika operan kiri tidak sama dengan operan kanan. Kalau tidak, salah. Intdiubah menjadi Decimal sebelum dibandingkan. |
String |
String |
Benar jika operan kiri tidak sama dengan operan kanan. Kalau tidak, salah. |
| Array | Array | Benar jika item di setiap operan tidak sama dan tidak dalam urutan yang sama. Jika tidak, salah |
| Objek | Objek | Benar jika kunci dan nilai setiap operan tidak sama. Kalau tidak, salah. Urutannya keys/values tidak penting. |
| Null | Null | Salah. |
| Nilai apapun | Undefined |
Tidak terdefinisi. |
Undefined |
Nilai apapun | Tidak terdefinisi. |
| Jenis yang tidak cocok | Jenis yang tidak cocok | Benar. |
= operator
Mengembalikan Boolean hasil. Mengembalikan true jika operan kiri dan kanan sama. Jika tidak, mengembalikan false.
Sintaks:
.expression =
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int |
Int |
Benar jika operan kiri sama dengan operan kanan. Kalau tidak, salah. |
Decimal |
Decimal |
Benar jika operan kiri sama dengan operan kanan. Kalau tidak, salah. Intdiubah menjadi Decimal sebelum dibandingkan. |
String |
String |
Benar jika operan kiri sama dengan operan kanan. Kalau tidak, salah. |
| Array | Array | Benar jika item di setiap operan sama dan dalam urutan yang sama. Kalau tidak, salah. |
| Objek | Objek | Benar jika kunci dan nilai setiap operan sama. Kalau tidak, salah. Urutannya keys/values tidak penting. |
| Nilai apapun | Undefined |
Undefined. |
Undefined |
Nilai apapun | Undefined. |
| Jenis yang tidak cocok | Jenis yang tidak cocok | Salah. |
+ operator
“+” adalah operator yang kelebihan beban. Ini dapat digunakan untuk penggabungan atau penambahan string.
Sintaks:
.expression +
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
String |
Nilai apapun | Mengkonversi operan kanan menjadi string dan menggabungkannya ke akhir operan kiri. |
| Nilai apapun | String |
Mengkonversi operan kiri menjadi string dan menggabungkan operan kanan ke akhir operan kiri yang dikonversi. |
Int |
Int |
Intnilai. Menambahkan operan bersama-sama. |
Int/Decimal |
Int/Decimal |
Decimalnilai. Menambahkan operan bersama-sama. |
| Nilai lainnya | Nilai lainnya | Undefined. |
- operator
Mengurangi operan kanan dari operan kiri.
Sintaks:
.expression -
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int |
Int |
Intnilai. Mengurangi operan kanan dari operan kiri. |
Int/Decimal |
Int/Decimal |
Decimalnilai. Mengurangi operan kanan dari operan kiri. |
String/Int/Decimal |
String/Int/Decimal |
Jika semua string dikonversi ke desimal dengan benar, Decimal nilai dikembalikan. Mengurangi operan kanan dari operan kiri. Jika tidak, mengembalikan Undefined. |
| Nilai lainnya | Nilai lainnya | Undefined. |
| Nilai lainnya | Nilai lainnya | Undefined. |
* operator
Mengalikan operan kiri dengan operan kanan.
Sintaks:
.expression *
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int |
Int |
Intnilai. Mengalikan operan kiri dengan operan kanan. |
Int/Decimal |
Int/Decimal |
Decimalnilai. Mengalikan operan kiri dengan operan kanan. |
String/Int/Decimal |
String/Int/Decimal |
Jika semua string dikonversi ke desimal dengan benar, Decimal nilai dikembalikan. Mengalikan operan kiri dengan operan kanan. Jika tidak, mengembalikan Undefined. |
| Nilai lainnya | Nilai lainnya | Undefined. |
/operator
Membagi operan kiri dengan operan kanan.
Sintaks:
.expression /
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int |
Int |
Intnilai. Membagi operan kiri dengan operan kanan. |
Int/Decimal |
Int/Decimal |
Decimalnilai. Membagi operan kiri dengan operan kanan. |
String/Int/Decimal |
String/Int/Decimal |
Jika semua string dikonversi ke desimal dengan benar, Decimal nilai dikembalikan. Membagi operan kiri dengan operan kanan. Jika tidak, mengembalikan Undefined. |
| Nilai lainnya | Nilai lainnya | Undefined. |
% operator
Mengembalikan sisa dari membagi operan kiri dengan operan kanan.
Sintaks:
.expression %
expression
| Operan kiri | Operan kanan | Output |
|---|---|---|
Int |
Int |
Intnilai. Mengembalikan sisa dari membagi operan kiri dengan operan kanan. |
String/Int/Decimal |
String/Int/Decimal |
Jika semua string dikonversi ke desimal dengan benar, Decimal nilai dikembalikan. Mengembalikan sisa dari membagi operan kiri dengan operan kanan. Atau, Undefined. |
| Nilai lainnya | Nilai lainnya | Undefined. |