Topik ini menjelaskan fungsi SQL yang didukung saat Anda menggunakan tabel pemetaan yang dibuat untuk analytical store untuk mengkueri data dengan mengeksekusi pernyataan SELECT, mencakup fungsi deret waktu, fungsi waktu, fungsi agregat, fungsi matematika, dan fungsi string.
Time series functions
|
Function |
Output type |
Description |
|
time_bin(_time,interval) |
Datetime |
Melakukan bucketing data berdasarkan waktu ketika fungsi ini digunakan bersama group by. Misalnya, Anda dapat menggunakan Parameter _time menentukan kolom waktu deret waktu _time. Parameter interval bertipe String dan menentukan interval bucketing data. Parameter interval dapat ditentukan menggunakan singkatan berbagai satuan waktu. Contoh: |
|
tag_value_at(_tags,tag_key) |
Varchar |
Mengembalikan nilai yang sesuai dengan kunci yang ditentukan dalam tag deret waktu. Parameter _tags menentukan kolom tag deret waktu _tags, dan parameter tag_key menentukan kunci dalam tag deret waktu. |
Time functions
Saat menggunakan fitur analytical store di Konsol Tablestore, nilai output bertipe Datetime berada dalam zona waktu sistem (UTC+8 untuk Tiongkok, yaitu waktu Beijing). Namun, jika Anda menggunakan SDK Tablestore untuk mengakses fitur analytical store, nilai output bertipe Datetime dikonversi ke waktu UTC. Anda dapat menyesuaikan zona waktu sesuai kebutuhan bisnis Anda. Topik ini menggunakan waktu Beijing (zona waktu UTC+8) sebagai contoh.
|
Function |
Output type |
Description |
|
from_unixtime(unix_timestamp) |
Datetime |
Mengonversi timestamp Unix ke nilai bertipe Datetime, mengonversi zona waktu nilai tersebut, lalu mengembalikan hasilnya. Misalnya, nilai kembali dari Parameter unix_timestamp menentukan timestamp Unix akurat hingga detik. |
|
from_unixtime(unix_timestamp,fsp) |
Datetime |
Mengonversi timestamp Unix ke nilai bertipe Datetime, mengonversi zona waktu nilai tersebut, lalu mengembalikan hasil yang dibulatkan ke tempat desimal fsp. Misalnya, nilai kembali dari Parameter unix_timestamp menentukan timestamp Unix akurat hingga detik. Parameter fsp menentukan presisi, dengan nilai maksimum 6. Jika nilai fsp lebih besar dari 6, akan terjadi pengecualian. Jika nilai fsp kurang dari 0, nilai tidak dibulatkan. |
|
from_unixtime_millis(unix_timestamp_millis) |
Datetime |
Mengonversi timestamp Unix ke nilai bertipe Datetime, mengonversi zona waktu nilai tersebut, lalu mengembalikan hasilnya. Misalnya, nilai kembali dari Parameter unix_timestamp_millis menentukan timestamp Unix akurat hingga milidetik. |
|
from_unixtime_micros(unix_timestamp_micros) |
Datetime |
Mengonversi timestamp Unix ke nilai bertipe Datetime, mengonversi zona waktu nilai tersebut, lalu mengembalikan hasilnya. Misalnya, nilai kembali dari Parameter unix_timestamp_micros menentukan timestamp Unix akurat hingga mikrodetik. |
|
unix_timestamp() |
Double |
Mengembalikan timestamp Unix waktu saat ini akurat hingga detik dalam zona waktu saat ini. |
|
unix_timestamp_millis() |
Double |
Mengembalikan timestamp Unix waktu saat ini yang dibulatkan ke detik terdekat akurat hingga milidetik dalam zona waktu saat ini. Misalnya, nilai kembali dari Fungsi ini setara dengan Penting
Timestamp yang dikembalikan oleh fungsi ini memiliki digit milidetik, tetapi presisinya dalam satuan detik, bukan milidetik. |
|
unix_timestamp_millis(datetime) |
Double |
Mengembalikan timestamp Unix akurat hingga milidetik dalam zona waktu datetime. Parameter datetime menentukan waktu bertipe Datetime. |
|
unix_timestamp_millis(datestr) |
Double |
Mengembalikan timestamp Unix akurat hingga milidetik untuk tanggal yang sesuai dengan datestr dalam zona waktunya. Misalnya, nilai kembali dari Parameter datestr adalah string waktu yang harus secara eksplisit menentukan tahun, bulan, dan hari. Rentang nilainya dari Penting
|
|
unix_timestamp_micros() |
Double |
Mengembalikan timestamp Unix waktu saat ini dalam satuan mikrosekon berdasarkan zona waktu lokal, dengan presisi hingga detik. Sebagai contoh, nilai yang dikembalikan oleh Fungsi ini setara dengan Penting
Timestamp yang dikembalikan oleh fungsi ini memiliki digit mikrodetik, tetapi presisinya dalam satuan detik, bukan mikrodetik. |
|
unix_timestamp_micros(datetime) |
Double |
Mengembalikan timestamp Unix pada tingkat mikrodetik dalam zona waktu datetime. Parameter datetime adalah waktu bertipe Datetime. |
|
unix_timestamp_micros(datestr) |
Double |
Mengembalikan timestamp Unix akurat hingga mikrodetik untuk tanggal dan waktu yang sesuai dengan datestr dalam zona waktunya. Misalnya, nilai kembali dari Nilai parameter datestr adalah string waktu yang harus secara eksplisit menentukan tahun, bulan, dan hari. Rentang nilainya dari Penting
|
|
timediff(expr1,expr2) |
Time |
Menghitung selisih antara parameter expr1 dan expr2. Parameter expr dapat bertipe Datetime, Time, atau String. |
|
addtime(expr1,expr2) |
Same as expr1 |
Menghitung jumlah dari parameter expr1 dan expr2. Parameter expr1 dapat bertipe Datetime atau Time, sedangkan parameter expr2 hanya dapat bertipe Time. |
|
date(datetime) |
Date |
Mengembalikan bagian tanggal dari datetime. Nilai parameter datetime adalah waktu bertipe Datetime. |
|
hour(expr) |
BigInt |
Mengembalikan bagian jam dalam nilai parameter expr. Nilai parameter expr dapat bertipe Datetime atau Time. |
|
minute(expr) |
BigInt |
Mengembalikan bagian menit dalam nilai parameter expr. Nilai parameter expr dapat bertipe Datetime atau Time. |
|
second(expr) |
BigInt |
Mengembalikan bagian kedua dari nilai parameter expr. Nilai parameter expr dapat bertipe Datetime atau Time. |
|
microsecond(expr) |
BigInt |
Mengembalikan bagian mikrodetik dalam nilai parameter expr. Nilai parameter expr dapat bertipe Datetime atau Time. |
|
month(expr) |
BigInt |
Mengembalikan bagian bulan dalam nilai parameter expr. Nilai parameter expr dapat bertipe Datetime atau Date. |
|
year(expr) |
BigInt |
Mengembalikan bagian tahun dalam nilai parameter expr. Nilai parameter expr dapat bertipe Datetime atau Date. |
|
week(expr) |
BigInt |
Mengembalikan minggu dalam tahun untuk tanggal yang ditentukan oleh parameter expr. Nilai parameter expr dapat bertipe Datetime atau Date. |
|
week(expr,mode) |
BigInt |
Mengembalikan minggu dalam tahun untuk tanggal yang ditentukan oleh parameter expr. Metode yang digunakan untuk menghitung minggu dalam tahun ditentukan oleh parameter mode. Nilai parameter expr dapat bertipe Datetime atau Date. Gambar berikut menunjukkan rentang nilai parameter mode (kompatibel dengan MySQL).
|
|
weekday(expr) |
BigInt |
Mengembalikan nilai indeks yang sesuai dengan hari dalam minggu untuk tanggal tertentu. Nilai kembali 0 menunjukkan Senin, 1 menunjukkan Selasa, dan seterusnya, dengan 6 menunjukkan Minggu. Nilai parameter expr dapat bertipe Datetime atau Date. |
|
weekofyear(expr) |
BigInt |
Mengembalikan minggu dalam tahun untuk tanggal tertentu. Rentang nilainya dari 1 hingga 53. WEEKOFYEAR setara dengan WEEK(date,3). Nilai parameter expr dapat bertipe Datetime atau Date. |
|
dayofmonth(expr) |
BigInt |
Mengembalikan hari dalam bulan untuk tanggal tertentu. Nilai kembali berkisar dari 1 hingga 31. Nilai parameter expr dapat bertipe Datetime atau Date. |
|
dayofweek(expr) |
BigInt |
Mengembalikan nilai indeks yang sesuai dengan hari dalam minggu untuk tanggal tertentu. Nilai kembali 1 menunjukkan Minggu, 2 menunjukkan Senin, dan seterusnya, dengan 7 menunjukkan Sabtu. Nilai parameter expr dapat bertipe Datetime atau Date. |
|
dayofyear(expr) |
BigInt |
Mengembalikan hari dalam tahun untuk tanggal tertentu. Nilai kembali berkisar dari 1 hingga 366. Nilai parameter expr dapat bertipe Datetime atau Date. |
|
monthname(expr) |
Varchar |
Mengembalikan nama lengkap bulan untuk tanggal yang ditentukan oleh parameter expr. Nilai parameter expr dapat bertipe Datetime atau Date. |
|
dayname(expr) |
Varchar |
Mengembalikan nama lengkap hari dalam minggu untuk tanggal yang ditentukan oleh parameter expr. Nilai parameter expr dapat bertipe Datetime atau Date. |
Aggregate functions
|
Function |
Output type |
Description |
|
count(expr) |
Bigint |
Mengembalikan jumlah baris di mana nilai kolom yang ditentukan bukan NULL di antara baris yang diambil oleh pernyataan SELECT. Hasilnya adalah nilai Bigint. |
|
sum(expr) |
Same type as expr |
Mengembalikan jumlah dari bidang expr. Jika hasil kueri kosong, NULL dikembalikan. |
|
avg(expr) |
Double |
Mengembalikan nilai rata-rata dari bidang expr. Jika hasil kueri kosong, NULL dikembalikan. |
|
min(expr) |
Same type as expr |
Mengembalikan nilai minimum dari bidang expr. Jika nilai bidang expr berupa string, outputnya adalah string terkecil secara leksikografis. |
|
max(expr) |
Same type as expr |
Mengembalikan nilai maksimum dari bidang expr. Jika nilai bidang expr berupa string, outputnya adalah string terbesar secara leksikografis. |
|
max_by(expr1,expr2) |
Same type as expr1 |
Mengembalikan nilai bidang expr1 pada baris di mana nilai bidang expr2 paling besar. Jika nilai bidang expr1 pada baris di mana nilai bidang expr2 paling besar adalah NULL, maka NULL dikembalikan. Nilai bidang expr1 dan expr2 dapat berupa string secara bersamaan. |
|
min_by(expr1,expr2) |
Same type as expr1 |
Mengembalikan nilai bidang expr1 pada baris di mana nilai bidang expr2 paling kecil. Jika nilai bidang expr1 pada baris di mana nilai bidang expr2 paling kecil adalah NULL, maka NULL dikembalikan. Nilai bidang expr1 dan expr2 dapat berupa string secara bersamaan. |
|
bit_and(expr) |
Bigint |
Mengembalikan hasil operasi AND bitwise pada bidang expr. Jika hasil kueri kosong, integer 64-bit dengan semua bit bernilai 1 dikembalikan. |
|
bit_or(expr) |
Bigint |
Mengembalikan hasil operasi OR bitwise pada bidang expr. Jika hasil kueri kosong, integer 64-bit dengan semua bit bernilai 0 dikembalikan. |
|
bit_xor(expr) |
Bigint |
Mengembalikan hasil operasi XOR bitwise pada bidang expr. Jika hasil kueri kosong, integer 64-bit dengan semua bit bernilai 0 dikembalikan. |
|
std(expr) |
Double |
Mengembalikan simpangan baku populasi dari bidang expr. std, stddev, dan stddev_pop adalah tiga fungsi yang setara. Jika hasil kueri kosong, NULL dikembalikan. |
|
stddev(expr) |
Double |
|
|
stddev_pop(expr) |
Double |
|
|
stddev_samp(expr) |
Double |
Mengembalikan simpangan baku sampel dari bidang expr. Jika hasil kueri kosong, NULL dikembalikan. |
|
var_pop(expr) |
Double |
Mengembalikan varians populasi dari bidang expr. var_pop dan variance adalah dua fungsi yang setara. Jika hasil kueri kosong, NULL dikembalikan. |
|
variance(expr) |
Double |
|
|
var_samp(expr) |
Double |
Mengembalikan varians sampel dari bidang expr. Jika hasil kueri kosong, NULL dikembalikan. |
Mathematical functions
|
Function |
Output type |
Description |
|
mod(x,y) |
Same type as x |
Mengembalikan sisa pembagian x dibagi y. Jika y bernilai 0, 0 dikembalikan. |
|
abs(x) |
Same type as x |
Mengembalikan nilai absolut dari x. |
|
ceil(x) |
Same type as x |
Mengembalikan nilai integer terkecil yang tidak kurang dari x, dengan pembulatan ke atas. |
|
floor(x) |
Same type as x |
Mengembalikan nilai integer terbesar yang tidak lebih dari x, dengan pembulatan ke bawah. |
|
round(x) |
Same type as x |
Mengembalikan nilai integer dari x yang dibulatkan ke integer terdekat. |
|
round(x,y) |
Same type as x |
Mengembalikan nilai x yang dibulatkan ke tempat desimal y. |
|
acos(x) |
Double |
Mengembalikan arkkosinus dari x, yaitu nilai y ketika Jika nilai x tidak berada dalam rentang -1 hingga 1, NULL dikembalikan. |
|
asin(x) |
Double |
Mengembalikan ark sinus dari x, yaitu nilai y ketika Jika nilai x tidak berada dalam rentang -1 hingga 1, NULL dikembalikan. |
|
atan(x) |
Double |
Mengembalikan ark tangen dari x, yaitu nilai y ketika |
|
atan2(x,y) |
Double |
Mengembalikan ark tangen dari dua variabel x dan y. Prosesnya mirip dengan menghitung ark tangen dari |
|
cos(x) |
Double |
Mengembalikan kosinus dari x. Nilai x dinyatakan dalam format radian. |
|
sin(x) |
Double |
Mengembalikan sinus dari x. Nilai x dinyatakan dalam format radian. |
|
tan(x) |
Double |
Mengembalikan tangen dari x. Nilai x dinyatakan dalam format radian. |
|
exp(x) |
Double |
Mengembalikan nilai e (basis logaritma natural) dipangkatkan x. |
|
pow(x,y) |
Double |
Mengembalikan nilai x dipangkatkan y. |
|
radians(x) |
Double |
Mengembalikan parameter x yang dikonversi dari derajat ke radian. Penting
π radian sama dengan 180 derajat. |
|
sqrt(x) |
Double |
Mengembalikan akar kuadrat dari x. |
|
sign(x) |
Bigint |
Mengembalikan -1, 0, atau 1 tergantung pada apakah nilai parameter x negatif, nol, atau positif. |
|
pi() |
Double |
Mengembalikan nilai Pi, yaitu nilai π. |
|
ln(x) |
Double |
Mengembalikan logaritma natural dari x, yaitu logaritma x dengan basis e. Jika x kurang dari atau sama dengan 0, NULL dikembalikan. |
|
log2(x) |
Double |
Mengembalikan logaritma biner dari x. Jika x kurang dari atau sama dengan |
|
log10(x) |
Double |
Mengembalikan logaritma x dengan basis 10. Jika x kurang dari atau sama dengan |
String functions
|
Function |
Output type |
Description |
|
length(str) |
Bigint |
Mengembalikan panjang string dalam byte. |
|
concat(str1,str2...) |
Varchar |
Mengembalikan hasil penggabungan string. Anda dapat menentukan beberapa string. |
|
to_base64(str) |
Varchar |
Mengembalikan hasil pengkodean Base64 dari string yang ditentukan oleh parameter str. |
|
hex(str) |
Bigint |
Mengembalikan representasi string heksadesimal dari nilai parameter str, di mana setiap byte dari setiap karakter dalam nilai parameter str dikonversi menjadi dua digit heksadesimal. |
|
hex(str) |
Varchar |
Mengembalikan representasi string heksadesimal dari x. Misalnya, nilai kembali dari |
|
instr(str1,substr) |
Bigint |
Mengembalikan posisi kemunculan pertama dari nilai parameter substr dalam string yang ditentukan oleh parameter str. |
|
lower(str) |
Varchar |
Mengembalikan huruf kecil dari string yang ditentukan oleh parameter str. |
|
ltrim(str) |
Varchar |
Mengembalikan string yang diperoleh setelah spasi awal dihapus dari nilai parameter str. |
|
lpad(str,len,padstr) |
Varchar |
Menambahkan nilai parameter padstr di sebelah kiri nilai parameter str hingga panjangnya sesuai dengan nilai yang ditentukan oleh parameter len, lalu mengembalikan string hasil penambahan tersebut. Jika panjang nilai parameter str lebih besar dari nilai yang ditentukan oleh parameter len, nilai kembali dipotong hingga panjang yang ditentukan oleh parameter len. Misalnya, nilai kembali dari |
|
rtrim(str) |
Varchar |
Mengembalikan string yang diperoleh setelah spasi akhir dihapus dari nilai parameter str. |
|
rpad(str,len,padstr) |
Varchar |
Menambahkan nilai parameter padstr di sebelah kanan nilai parameter str hingga panjangnya sesuai dengan nilai yang ditentukan oleh parameter len, lalu mengembalikan string hasil penambahan tersebut. Jika panjang nilai parameter str lebih besar dari nilai yang ditentukan oleh parameter len, nilai kembali dipotong hingga panjang yang ditentukan oleh parameter len. |
|
trim(str,len,padstr) |
Varchar |
Mengembalikan string yang diperoleh setelah spasi awal dan akhir dihapus dari nilai parameter str. |
|
substr(str,pos1,pos2) |
Varchar |
Mengekstraksi sejumlah karakter tertentu yang ditentukan oleh parameter pos2 dari nilai parameter str dan mengembalikan hasil ekstraksi tersebut. Ekstraksi dimulai dari karakter yang ditentukan oleh parameter pos1. Jika parameter pos2 tidak ditentukan dalam fungsi, semua karakter mulai dari karakter yang ditentukan oleh parameter pos1 diekstraksi sebagai string yang dikembalikan. |
|
replace(str,from_str,to_str) |
Varchar |
Mengembalikan string yang diperoleh setelah semua nilai parameter from_str dalam nilai parameter str diganti dengan nilai parameter to_str. Pencarian nilai parameter from_str bersifat case-sensitive. |
|
reverse(str) |
Varchar |
Mengembalikan hasil setelah nilai parameter str dibalik. |
|
upper(str) |
Varchar |
Mengembalikan nilai parameter str dalam huruf kapital. |
