Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Klausa SELECT mendukung ekspresi skalar. Ekspresi skalar adalah kombinasi simbol dan operator yang dapat dievaluasi untuk mendapatkan satu nilai. Contoh ekspresi skalar meliputi: konstanta, referensi properti, referensi elemen array, referensi alias, atau panggilan fungsi. Ekspresi skalar dapat digabungkan ke dalam ekspresi kompleks menggunakan operator.
Syntax
<scalar_expression> ::=
<constant>
| input_alias
| parameter_name
| <scalar_expression>.property_name
| <scalar_expression>'['"property_name"|array_index']'
| unary_operator <scalar_expression>
| <scalar_expression> binary_operator <scalar_expression>
| <scalar_expression> ? <scalar_expression> : <scalar_expression>
| <scalar_function_expression>
| <create_object_expression>
| <create_array_expression>
| (<scalar_expression>)
<scalar_function_expression> ::=
'udf.' Udf_scalar_function([<scalar_expression>][,…n])
| builtin_scalar_function([<scalar_expression>][,…n])
<create_object_expression> ::=
'{' [{property_name | "property_name"} : <scalar_expression>][,…n] '}'
<create_array_expression> ::=
'[' [<scalar_expression>][,…n] ']'
Arguments
| Description | |
|---|---|
<constant> |
Mewakili nilai konstanta. Lihat bagian Konstanta untuk detailnya. |
input_alias |
Mewakili nilai yang ditentukan oleh yang input_alias diperkenalkan dalam FROM klausa. |
| Nilai ini dijamin tidak terdefinis –nilai yang tidak ditentukan dalam input dilewati. | |
<scalar_expression>.property_name |
Mewakili nilai properti objek. Jika properti tidak ada atau properti direferensikan pada nilai, yang bukan objek, maka ekspresi mengevaluasi ke nilai yang tidak ditentukan . |
<scalar_expression>'['"property_name"|array_index']' |
Mewakili nilai properti dengan elemen nama property_name atau array dengan indeks array_index array. Jika indeks properti/array tidak ada atau indeks properti/array direferensikan pada nilai yang bukan objek/array, maka ekspresi mengevaluasi ke nilai yang tidak ditentukan. |
unary_operator <scalar_expression> |
Mewakili operator yang diterapkan ke satu nilai. |
<scalar_expression> binary_operator <scalar_expression> |
Mewakili operator yang diterapkan ke dua nilai. |
<scalar_function_expression> |
Mewakili nilai yang ditentukan oleh hasil panggilan fungsi. |
udf_scalar_function |
Nama fungsi skalar yang ditentukan pengguna. |
builtin_scalar_function |
Nama fungsi skalar bawaan. |
<create_object_expression> |
Mewakili nilai yang diperoleh dengan membuat objek baru dengan properti tertentu dan nilainya. |
<create_array_expression> |
Mewakili nilai yang diperoleh dengan membuat array baru dengan nilai yang ditentukan sebagai elemen |
parameter_name |
Mewakili nilai nama parameter yang ditentukan. Nama parameter harus memiliki satu @ sebagai karakter pertama. |
Examples
Contoh ekspresi skalar yang paling umum adalah persamaan matematika.
SELECT VALUE
((2 + 11 % 7) - 2) / 2
[
2
]
Dalam contoh berikutnya ini, hasil ekspresi skalar adalah boolean:
SELECT
("Redmond" = "WA") AS isCitySameAsState,
("WA" = "WA") AS isStateSameAsState
[
{
"isCitySameAsState": false,
"isStateSameAsState": true
}
]
Komentar
- Semua argumen harus ditentukan saat memanggil fungsi skalar bawaan atau yang ditentukan pengguna. Jika salah satu argumen tidak terdefinisi, fungsi tidak dipanggil, dan hasilnya adalah
undefined. - Properti apa pun yang diberi nilai yang tidak ditentukan dilewati dan tidak disertakan dalam objek yang dibuat saat membuat objek.
- Nilai elemen apa pun yang ditetapkan nilai yang tidak ditentukan dilewati dan tidak disertakan dalam objek yang dibuat saat membuat array. Lewati ini menyebabkan elemen yang ditentukan berikutnya mengambil tempatnya sedih sehingga array yang dibuat tidak melewati indeks.