Topik ini menjelaskan fungsi string yang didukung oleh Hologres beserta contohnya.
Untuk informasi lebih lanjut mengenai fungsi string yang kompatibel dengan PostgreSQL, lihat PostgreSQL Functions.
Type | Function | Feature |
String concatenation, splitting, and padding | Menghapus karakter yang ditentukan dari kedua ujung string. | |
Menggabungkan dua atau lebih nilai string dan mengembalikan satu string tunggal. | ||
Menggabungkan semua argumen kecuali argumen pertama, menggunakan argumen pertama sebagai pemisah. | ||
Mengekstrak sejumlah karakter tertentu dari awal string. | ||
Mengagregasi nilai-nilai dari kolom yang sama di beberapa baris menjadi satu string tunggal. Ini adalah fungsi yang kompatibel dengan Oracle. Anda harus menginstal ekstensi orafce terlebih dahulu. Untuk informasi lebih lanjut, lihat Oracle-compatible functions. | ||
Menambahkan karakter yang ditentukan di sisi kiri string hingga mencapai panjang total yang ditentukan. | ||
Menghapus karakter yang ditentukan dari sisi kiri (awal) string. | ||
Mencocokkan string terhadap ekspresi reguler dan mengembalikan hasil pencocokan dalam bentuk array. | ||
Menambahkan karakter yang ditentukan di sisi kanan string hingga mencapai panjang total yang ditentukan. | ||
Menghapus karakter yang ditentukan dari sisi kanan (akhir) string. | ||
Menghapus karakter yang ditentukan dari awal, akhir, atau kedua ujung string. | ||
Mengagregasi nilai-nilai dari kolom yang sama di beberapa baris menjadi satu string tunggal. | ||
Memisahkan string berdasarkan pemisah yang ditentukan dan mengembalikan segmen ke- | ||
Menggabungkan dua string. | ||
Mengekstrak substring dari posisi awal yang ditentukan hingga akhir string atau untuk panjang yang ditentukan. | ||
Mengekstrak substring dari string target berdasarkan aturan yang ditentukan. | ||
Other string functions | Mengembalikan kode ASCII dari karakter pertama dalam string. | |
Mengembalikan panjang karakter dari sebuah string. | ||
Mengembalikan karakter yang sesuai dengan nilai kode yang ditentukan. | ||
Mengubah huruf pertama setiap kata menjadi huruf kapital dan sisanya menjadi huruf kecil. | ||
Menemukan posisi substring dalam rentang yang ditentukan dari string target. Fungsi ini mengembalikan posisi jika ditemukan, atau 0 jika tidak ditemukan. Ini adalah fungsi yang kompatibel dengan Oracle. Anda harus menginstal ekstensi orafce terlebih dahulu. Untuk informasi lebih lanjut, lihat Oracle-compatible functions. | ||
Mengembalikan jumlah karakter dalam string. | ||
Mengonversi string menjadi huruf kecil. | ||
Menghitung hash MD5 dari sebuah string. Hasilnya dikembalikan dalam format heksadesimal. | ||
Mengembalikan jumlah byte dalam string. | ||
Membalik urutan string. Ini adalah fungsi yang kompatibel dengan Oracle. Anda harus menginstal ekstensi orafce terlebih dahulu. Untuk informasi lebih lanjut, lihat Oracle-compatible functions. | ||
Menemukan posisi substring dalam string target. | ||
Mengurai string yang mematuhi aturan identifier SQL. | ||
Memberi tanda kutip pada string agar menjadi identifier SQL yang valid. | ||
Mengonversi string menjadi konstanta string SQL yang valid. | ||
Mengulang string sejumlah kali yang ditentukan. | ||
Menemukan semua kemunculan substring yang ditentukan dalam string sumber dan menggantinya dengan string lain. | ||
Mengganti substring dengan substring baru menggunakan ekspresi reguler POSIX. | ||
Memisahkan string menggunakan ekspresi reguler dan mengembalikan hasilnya sebagai array. | ||
Fungsi pemisahan string ini membagi string menjadi beberapa baris, sehingga memungkinkan transformasi dari baris ke kolom. | ||
Mengembalikan nomor baris tempat formula tersebut berada. Fungsi ini hanya didukung di Hologres V1.3 dan versi yang lebih baru. | ||
Memeriksa apakah string target diawali dengan awalan yang ditentukan. | ||
Menemukan posisi substring dalam string target. | ||
Mengonversi angka ke representasi heksadesimalnya. | ||
Mengonversi string ke tipe numerik. | ||
Mengganti karakter dalam string dengan karakter yang ditentukan. | ||
Mengonversi string menjadi huruf kapital. |
String concatenation, splitting, and padding
STRING || STRING
Description: Menggabungkan dua string.
<string_value1> TEXT || <string_value2> TEXTParameters
string_value1 dan string_value2: Ekspresi string yang akan digabungkan.
Return value
Mengembalikan tipe TEXT.
Example
--Returns: HologreSQL SELECT 'Holo' || 'greSQL';
CONCAT
Description: Menggabungkan dua atau lebih nilai string menjadi satu string tunggal.
CONCAT(<str1> TEXT, <str2> TEXT, ..., <strN> TEXT)Parameters
str1,...,strN: String yang akan digabungkan.CatatanArgumen NULL diabaikan.
Return value
Mengembalikan tipe TEXT.
Example
SELECT CONCAT('abcde', 2, NULL, 22);Perintah ini mengembalikan hasil berikut.
concat --------- abcde222
CONCAT_WS
Description: Menggabungkan semua argumen kecuali argumen pertama, yang digunakan sebagai pemisah.
CONCAT_WS(<sep> TEXT, str "any" [, str "any" [, ...] ])CatatanTipe data `any` menunjukkan bahwa semua tipe data didukung.
Parameters
sep: Wajib. Pemisah yang disisipkan di antara string.
CatatanJika nilainya NULL, fungsi mengembalikan NULL.
str: Wajib. String yang akan digabungkan.
CatatanArgumen NULL diabaikan.
Return value
Mengembalikan tipe TEXT.
Example
SELECT CONCAT_WS(',', 'abcde', 2, NULL, 22);Perintah ini mengembalikan hasil berikut.
concat_ws ---------- abcde,2,22
LISTAGG
Description: Mengagregasi nilai-nilai dari kolom yang sama di beberapa baris menjadi satu string tunggal. Ini adalah fungsi yang kompatibel dengan Oracle. Anda harus menginstal ekstensi orafce terlebih dahulu. Untuk informasi lebih lanjut, lihat Oracle-compatible functions.
LISTAGG(<str1> TEXT [, <str2> TEXT])Parameters
str1: Wajib. Ekspresi string atau nama kolom yang akan diagregasi.
str2: Opsional. Pemisah.
Return value
Mengembalikan tipe TEXT.
Examples
Example 1
--Returns: hologres SELECT LISTAGG(t) FROM (VALUES('holo'), ('gres')) AS l(t);Example 2
--Returns: holo.gres SELECT LISTAGG(t, '.') FROM (VALUES('holo'), ('gres')) AS l(t);
SUBSTRING
Description: Mengekstrak substring dari string target berdasarkan aturan yang ditentukan.
Mengekstrak substring dari posisi tertentu dalam string.
SUBSTRING(<str> TEXT [FROM <num_start> INT] [FOR <num_end> INT])Mengekstrak substring yang cocok dengan ekspresi reguler POSIX.
SUBSTRING(<str> TEXT FROM <pattern> TEXT)Mengekstrak substring yang cocok dengan ekspresi reguler SQL.
SUBSTRING(<str> TEXT FROM <pattern> TEXT FOR <escape> TEXT )
Parameters
str: Wajib. String target.
num_start dan num_end: Opsional. Posisi awal dan akhir.
pattern: Wajib. Ekspresi reguler yang menentukan cara mencocokkan dan mengekstrak substring.
escape: Wajib. Karakter escape.
CatatanDalam ekspresi reguler, beberapa karakter seperti
.,*, dan+memiliki makna khusus. Untuk mencocokkan karakter-karakter ini secara literal, Anda harus mendahuluinya dengan karakter escape.
Return value
Mengembalikan tipe TEXT.
Examples
Example 1: Mengekstrak substring dari posisi tertentu dalam string.
SELECT SUBSTRING('Thomas' FROM 2 FOR 3);Perintah ini mengembalikan hasil berikut.
substring ---------- homExample 2: Mengekstrak substring yang cocok dengan ekspresi reguler POSIX.
SELECT SUBSTRING('Thomas' FROM '...$');Perintah ini mengembalikan hasil berikut.
substring ---------- masExample 3: Mengekstrak substring yang cocok dengan ekspresi reguler SQL.
SELECT SUBSTRING('Thomas' FROM '%#"o_a#"_' FOR '#');Perintah ini mengembalikan hasil berikut.
substring ---------- oma
REGEXP_MATCH
Description: Mencocokkan string terhadap ekspresi reguler dan mengembalikan hasil pencocokan dalam bentuk array.
REGEXP_MATCH(<str> TEXT, <pattern> TEXT)Parameters
str: Wajib. String yang akan dicocokkan.
pattern: Wajib. Ekspresi reguler.
Return value
Mengembalikan tipe ARRAY.
Example
SELECT regexp_match('foobarbequebaz', '(bar)(beque)');Perintah ini mengembalikan hasil berikut.
regexp_match ------------ {bar,beque}
SUBSTR
Description
Mengekstrak substring dari posisi awal yang ditentukan hingga akhir string. Ini adalah fungsi yang kompatibel dengan Oracle. Anda harus menginstal ekstensi orafce terlebih dahulu. Untuk informasi lebih lanjut, lihat Oracle-compatible functions.
SUBSTR(<str> TEXT, <num_start> INTEGER)Parameters:
str: Wajib. String target.
num_start: Wajib. Posisi awal untuk ekstraksi substring.
Mengekstrak substring dengan panjang tertentu dari posisi awal yang ditentukan. Ini adalah fungsi yang kompatibel dengan Oracle. Anda harus menginstal ekstensi orafce terlebih dahulu. Untuk informasi lebih lanjut, lihat Oracle-compatible functions.
SUBSTR(<str> TEXT, <num_start> INTEGER, <len> INTEGER)Parameters:
str: Wajib. String target.
num_start: Wajib. Posisi awal untuk ekstraksi substring.
len: Panjang substring yang dikembalikan.
Return value
Mengembalikan tipe TEXT.
Examples
Example 1: Mengekstrak substring mulai dari karakter keempat hingga akhir string.
--Returns: ogres SELECT SUBSTR('Hologres', 4);Example 2: Mengekstrak lima karakter mulai dari karakter kedua.
--Returns: ologr SELECT SUBSTR('Hologres', 2, 5);
SPLIT_PART
Description: Memisahkan string berdasarkan pemisah yang ditentukan dan mengembalikan segmen ke-
num.SPLIT_PART(<str> TEXT, <delimiter> TEXT, <num> INT)Parameters
str: Wajib. String target yang akan dipisahkan.
delimiter: Wajib. Pemisah yang digunakan untuk memisahkan.
num: Wajib. Bilangan bulat yang menentukan segmen mana yang akan dikembalikan. Indeks dimulai dari 1.
Return value
Mengembalikan tipe TEXT. Jika `num` lebih besar dari jumlah segmen, fungsi mengembalikan NULL.
Example
CREATE TABLE split_part_test ( a text ); INSERT INTO split_part_test VALUES ('a/b/c/d/e'), ('a1/b1/c1/d1/e1'); SELECT split_part(a, '/', 2) FROM split_part_test;Perintah ini mengembalikan hasil berikut.
split_part ---------- b b1
STRING_AGG
Description: Mengagregasi nilai-nilai dari kolom yang sama di beberapa baris menjadi satu string tunggal.
STRING_AGG(expression [ order_by_clause ] ) [ FILTER ( WHERE filter_clause ) ]Klausa `FILTER` hanya didukung di Hologres V1.3 dan versi yang lebih baru.
CatatanUntuk menggunakan fitur ini, Anda harus melakukan upgrade instans Anda. Untuk informasi lebih lanjut, lihat Upgrade an instance. Anda juga dapat bergabung dengan grup DingTalk Hologres untuk mendapatkan dukungan. Untuk informasi tentang cara bergabung, lihat How do I get more online support?.
Parameters
expression: Wajib. Ekspresi atau nama kolom yang akan digabungkan menjadi string.
order_by_clause: Opsional. Menentukan urutan pengurutan nilai dalam `expression` sebelum digabungkan. Jika parameter ini tidak ditentukan, database dapat mengurutkannya dalam urutan apa pun.
FILTER ( WHERE filter_clause ): Opsional. Menentukan kondisi untuk memfilter baris yang disertakan dalam agregasi.
Return value
Mengembalikan tipe TEXT.
Examples
Example 1
CREATE TABLE city_test ( country text, city text ); INSERT INTO city_test VALUES ('China', 'Shanghai'), ('China', 'Taiwan'), ('Japan', 'Tokyo'), ('France', 'Paris'), ('UK', 'London'); SELECT STRING_AGG(city, ',') FROM city_test;Perintah ini mengembalikan hasil berikut.
string_agg ------------------------ Shanghai,Taiwan,Tokyo,Paris,LondonExample 2
CREATE TABLE name_text ( student_id int, name text); INSERT INTO name_text VALUES ( 1, 'Zhang San'), ( 2, 'Li Si'), ( 3, 'Wang Wu'), ( 4, 'Zhou Liu' ); SELECT STRING_AGG(name, ',') FILTER (WHERE student_id > 2) FROM name_text;Perintah ini mengembalikan hasil berikut.
string_agg ---------- Wang Wu,Saturday
LEFT
Description: Mengekstrak sejumlah karakter tertentu dari awal string.
LEFT(<str> TEXT, <num> INT)Parameters
str: Wajib. String target.
num: Wajib. Bilangan bulat yang menentukan jumlah karakter yang diekstrak dari awal string.
Jika `num` bernilai negatif, fungsi mengembalikan semua karakter kecuali
-numkarakter terakhir.
Return value
Mengembalikan tipe TEXT.
Example
SELECT LEFT('hologres', 4);Perintah ini mengembalikan hasil berikut.
left ---- holo
RIGHT
Description: Mengekstrak sejumlah karakter tertentu dari akhir string.
RIGHT(<str> TEXT, <num> INT)Parameters
str: Wajib. String target.
num: Wajib. Bilangan bulat yang menentukan jumlah karakter yang diekstrak dari akhir string.
Jika `num` bernilai negatif, fungsi mengembalikan semua karakter kecuali
-numkarakter pertama.
Return value
Mengembalikan tipe TEXT.
Example
SELECT RIGHT('hologres', 4);Perintah ini mengembalikan hasil berikut.
right ---------- gres
TRIM
Description: Menghapus karakter yang ditentukan dari awal, akhir, atau kedua ujung string.
TRIM([leading | trailing | both] [<characters> TEXT] FROM STRING)Parameters
Posisi penghapusan. Secara default, karakter dihapus dari kedua ujung. Nilai yang valid adalah:
leading: Opsional. Menghapus karakter yang ditentukan hanya dari awal (sisi kiri) string.
trailing: Opsional. Menghapus karakter yang ditentukan dari akhir (sisi kanan) string.
both: Opsional. Menghapus karakter yang ditentukan dari kedua ujung string.
characters: Opsional. Kumpulan karakter yang akan dihapus.
string: Wajib. String target.
Return value
Mengembalikan tipe TEXT.
Example
--Returns: Tom select TRIM(BOTH 'xyz' FROM 'yxTomxx');
BTRIM
Description: Menghapus karakter yang ditentukan dari kedua ujung string.
BTRIM(<str> TEXT [, <characters> TEXT])Parameters
str: Wajib. String target.
characters: Opsional. Kumpulan karakter yang akan dihapus dari kedua ujung string target.
CatatanParameter ini mencocokkan setiap karakter dalam set karakter secara individual, bukan sebagai string utuh.
Jika parameter `characters` tidak ditentukan, nilai default-nya adalah spasi.
Return value
Mengembalikan tipe TEXT.
Example
--Returns: trim SELECT BTRIM('xyxtrimyyx', 'xyz');
LTRIM
Description: Menghapus karakter yang ditentukan dari sisi kiri (awal) string.
LTRIM(<str> TEXT [, <characters> TEXT])Parameters
str: Wajib. String target.
characters: Opsional. Kumpulan karakter yang akan dihapus dari sisi kiri (awal) string target.
CatatanParameter ini mencocokkan setiap karakter dalam set karakter secara individual, bukan sebagai string utuh.
Jika parameter `characters` tidak ditentukan, nilai default-nya adalah spasi.
Return value
Mengembalikan tipe TEXT.
Example
-- Returns: test SELECT LTRIM('zzzytest', 'xyz');
RTRIM
Description: Menghapus karakter yang ditentukan dari sisi kanan (akhir) string.
RTRIM(<str> TEXT [, <characters> TEXT])Parameters
str: Wajib. String target.
characters: Opsional. Kumpulan karakter yang akan dihapus dari sisi kanan (akhir) string target. Jika parameter `characters` tidak ditentukan, nilai default-nya adalah spasi.
CatatanParameter ini mencocokkan setiap karakter dalam set karakter secara individual, bukan sebagai string utuh.
Return value
Mengembalikan tipe TEXT.
Example
-- Returns: test SELECT RTRIM('testxxzx', 'xyz');
LPAD
Description: Menambahkan karakter yang ditentukan di sisi kiri string hingga mencapai panjang total yang ditentukan.
LPAD(<str> TEXT, <length> INT [, <fill> TEXT])Parameters
str: Wajib. String target.
length: Wajib. Panjang total string hasil.
CatatanJika string target lebih panjang dari `length`, fungsi memotong string dari sisi kanan hingga mencapai panjang yang ditentukan.
fill: Opsional. Karakter yang digunakan untuk padding. Jika parameter ini tidak ditentukan, nilai default-nya adalah spasi.
Return value
Mengembalikan tipe TEXT.
Example
--Returns: xyxhi SELECT LPAD('hi', 5, 'xy');
RPAD
Description: Menambahkan karakter yang ditentukan di sisi kanan string hingga mencapai panjang total yang ditentukan.
RPAD(<str> TEXT, <length> INT [, <fill> TEXT])Parameters
str: Wajib. String target.
length: Wajib. Panjang total string hasil.
CatatanJika string target lebih panjang dari `length`, fungsi memotong string dari sisi kanan hingga mencapai panjang yang ditentukan.
fill: Opsional. Karakter yang digunakan untuk padding. Jika parameter ini tidak ditentukan, nilai default-nya adalah spasi.
Return value
Mengembalikan tipe TEXT.
Example
--Returns: hixyx SELECT RPAD('hi', 5, 'xy');
Other string functions
TO_NUMBER
Description: Mengonversi string ke tipe numerik.
TO_NUMBER(<str1> TEXT, <str2> TEXT)Parameters
str1: String teks yang akan dikonversi.
str2: Model format. Parameter ini menentukan cara mengurai teks pada parameter pertama untuk mengonversinya menjadi angka.
Return value
Mengembalikan tipe NUMERIC.
Example
--Returns: -12454.8 SELECT TO_NUMBER('12,454.8-', '99G999D9S');
REPLACE
Description: Menemukan semua kemunculan substring yang ditentukan dalam string sumber dan menggantinya dengan string lain yang ditentukan.
REPLACE(<str> TEXT, <old_str> TEXT, <new_str> TEXT)Parameters
str: Wajib. String target.
old_str: Wajib. Substring yang akan diganti.
new_str: Wajib. String pengganti.
Return value
Mengembalikan tipe TEXT.
Example
CREATE TABLE animal_test ( animal text, color text ); INSERT INTO animal_test VALUES ('dog', 'white'), ('cat', 'white'), ('tiger', 'yellow'); SELECT animal, REPLACE(color, 'white', 'multi-colored') FROM animal_test;Perintah ini mengembalikan hasil berikut.
animal | replace ------------------- dog | multi-colored cat | multi-colored tiger | yellow
REGEXP_REPLACE
Description: Mengganti substring dengan substring baru menggunakan ekspresi reguler POSIX.
REGEXP_REPLACE(<str> TEXT, <regex> TEXT, <replacement> TEXT [, <flags> TEXT])Parameters
str: Wajib. String target yang akan dimodifikasi.
regex: Wajib. Ekspresi reguler.
replacement: Wajib. String pengganti.
flags: Opsional. Menentukan flag pencocokan untuk ekspresi reguler.
Return value
Mengembalikan tipe TEXT.
Example:
CREATE TABLE a_test ( a text ); INSERT INTO a_test VALUES ('Abcd1234abCd'); SELECT REGEXP_REPLACE(a, '1234.', '77', 'ig') FROM a_test;Perintah ini mengembalikan hasil berikut:
regexp_replace -------------- Abcd77bCd
PLVSTR.RVRS
Description: Membalik urutan string. Ini adalah fungsi yang kompatibel dengan Oracle. Anda harus menginstal ekstensi orafce terlebih dahulu. Untuk informasi lebih lanjut, lihat Oracle-compatible functions.
Membalik bagian string antara posisi awal dan akhir yang ditentukan.
PLVSTR.RVRS(<str> TEXT, <start> INTEGER, <end> INTEGER)Membalik string dari posisi yang ditentukan hingga akhir.
PLVSTR.RVRS(<str> TEXT, <start> INTEGER)Membalik seluruh string.
PLVSTR.RVRS(<str> TEXT)
Return value
Mengembalikan tipe TEXT.
Examples
Example 1: Membalik bagian string dari posisi awal hingga posisi akhir yang ditentukan.
-- Returns: rg SELECT PLVSTR.RVRS('Hologres', 5,6);Example 2: Membalik string dari posisi yang ditentukan hingga akhir.
-- Returns: sergo SELECT PLVSTR.RVRS('Hologres', 4);Example 3: Membalik seluruh string.
-- Returns: sergoloH SELECT PLVSTR.RVRS('Hologres');
CHAR_LENGTH
Description: Mengembalikan panjang karakter dari sebuah string.
CHAR_LENGTH(<str> TEXT)Return value
Mengembalikan tipe INT.
Example
--Returns: 4 SELECT CHAR_LENGTH('jose');
LENGTH
Description: Mengembalikan jumlah karakter dalam string. Jika Anda menggunakan set karakter UTF-8, satu karakter Tionghoa, angka, atau huruf dihitung sebagai satu karakter.
LENGTH(<str> TEXT)Return value
Mengembalikan tipe INT.
Example
--Returns: 4 SELECT LENGTH('jose');CatatanHasil fungsi
LENGTHsama dengan fungsiCHAR_LENGTH.
LOWER
Description: Mengonversi string menjadi huruf kecil.
LOWER(<str> TEXT)Return value
Mengembalikan tipe TEXT.
Example
-- Returns: tom SELECT LOWER('TOM');
UPPER
Description: Mengonversi string menjadi huruf kapital.
UPPER(<str> TEXT)Return value description
Mengembalikan tipe TEXT.
Example
-- Returns: TOM SELECT UPPER('tom');
INITCAP
Description: Mengubah huruf pertama setiap kata menjadi huruf kapital dan sisanya menjadi huruf kecil.
INITCAP(<str> TEXT)CatatanKata adalah rangkaian karakter alfanumerik yang dipisahkan oleh karakter non-alfanumerik.
Return value
Mengembalikan tipe TEXT.
Example
-- Returns: Hi Thomas SELECT INITCAP('hi THOMAS');
OCTET_LENGTH
Description: Mengembalikan jumlah byte dalam string.
OCTET_LENGTH(<str> TEXT)Return value
Mengembalikan tipe INT.
Example
--Returns: 4 SELECT OCTET_LENGTH('jose');
POSITION
Description: Menemukan posisi substring dalam string target.
POSITION(<substr> TEXT IN <str> TEXT)Parameters
substr: Wajib. Substring.
Parameter str menentukan string target.
Return value
Mengembalikan tipe INT.
Example
--Returns: 3 SELECT POSITION('om' IN 'Thomas');
STRPOS
Description: Menemukan posisi substring dalam string target.
STRPOS(<str> TEXT, <substr> TEXT)Parameters
str: Wajib. String target.
substr: Wajib. Substring.
Return value
Mengembalikan tipe INT.
Example
--Returns: 2 SELECT STRPOS('high', 'ig');
INSTR
Description: Menemukan posisi substring dalam rentang yang ditentukan dari string target. Fungsi ini mengembalikan posisi jika substring ditemukan, atau 0 jika tidak ditemukan. Ini adalah fungsi yang kompatibel dengan Oracle. Anda harus menginstal ekstensi orafce terlebih dahulu. Untuk informasi lebih lanjut, lihat Oracle-compatible functions.
INSTR(<str> TEXT, <patt> TEXT [, <start> INTEGER, <nth> INTEGER])Parameters
str: Wajib. String target.
patt: Wajib. Substring yang akan dicocokkan.
start: Opsional. Posisi awal untuk pencocokan. Jika parameter ini tidak ditentukan, pencocokan dimulai dari awal string.
nth: Opsional. Kemunculan pencocokan yang akan ditemukan. Jika parameter ini tidak ditentukan, fungsi mencari kemunculan pertama.
Return value
Mengembalikan tipe INT.
Examples
Example 1
--Returns: 4 SELECT INSTR('Hologres', 'o',1,2);Example 2
--Returns: 2 SELECT INSTR('Hologres', 'o',1,1);Example 3
--Returns: 4 SELECT INSTR('Hologres', 'o',4);Example 4
--Returns: 2 SELECT INSTR('Hologres', 'o');
MD5
Description: Menghitung hash MD5 dari sebuah string. Hasilnya dikembalikan dalam format heksadesimal.
MD5(<str> TEXT)Return value
Mengembalikan tipe TEXT.
Example
--Returns: 900150983cd24fb0d6963f7d28e17f72 SELECT MD5('abc');
PARSE_IDENT
Description: Mengurai string yang mematuhi aturan identifier SQL.
PARSE_IDENT(<quali_iden> TEXT [,...] )Parameters
parse_ident: Wajib. String yang akan diurai, biasanya berupa identifier lengkap dari objek basis data.
Return value
Mengembalikan tipe TEXT.
Example
--Returns: {"SomeSchema","sometable"} SELECT PARSE_IDENT('"SomeSchema".someTable');
QUOTE_IDENT
Description: Memberi tanda kutip pada string agar menjadi identifier SQL yang valid.
QUOTE_IDENT(<str> TEXT)CatatanAnda dapat menambahkan tanda kutip ketika string berisi karakter non-identifier atau ketika besar-kecil huruf string mungkin diubah.
Return Value Description
Mengembalikan tipe TEXT.
Example
--Returns: "Foo bar" SELECT QUOTE_IDENT('Foo bar');
QUOTE_LITERAL
Description: Mengonversi string menjadi konstanta string SQL yang valid.
QUOTE_LITERAL(<str> TEXT)Return value
Mengembalikan tipe TEXT.
Example
--Returns: 'O''Reilly' SELECT QUOTE_LITERAL(E'O\'Reilly');
ASCII
Description: Mengembalikan kode ASCII dari karakter pertama dalam string.
ASCII(<str> TEXT)Return value
Mengembalikan tipe data TEXT.
Example
--Returns: 120 SELECT ASCII('x');
CHR
Description: Mengembalikan karakter yang sesuai dengan nilai kode yang ditentukan.
CHR(<num> INT)Return value description
Mengembalikan tipe TEXT.
Example
--Returns: A SELECT CHR(65);
REPEAT
Description: Mengulang string sejumlah kali yang ditentukan.
REPEAT(<str> TEXT, <number> INT)Parameters
str: Wajib. String target.
number: Wajib. Jumlah pengulangan string target.
Return value description
Mengembalikan tipe TEXT.
Example
--Returns: PgPgPgPg SELECT REPEAT('Pg', 4);
STARTS_WITH
Description: Memeriksa apakah string target diawali dengan awalan yang ditentukan.
STARTS_WITH(<str> TEXT, <prefix> TEXT)Parameters
str: Wajib. String target.
prefix: Wajib. String awalan.
Return value
Mengembalikan tipe BOOLEAN. Fungsi mengembalikan `t` (true) jika string target diawali dengan awalan tersebut, dan `f` (false) jika tidak.
Example
--Returns: t SELECT STARTS_WITH('alphabet', 'alph');
REGEXP_SPLIT_TO_TABLE
Description: Fungsi pemisahan string yang mengubah data yang dipisahkan menjadi baris dan mendukung transformasi dari baris ke kolom.
REGEXP_SPLIT_TO_TABLE(<str> TEXT, <pattern> TEXT)Parameters
str: Wajib. String yang akan dipisahkan.
pattern: Wajib. Ekspresi reguler yang menentukan cara memisahkan string. Karakter khusus dan konstruksi dalam ekspresi reguler digunakan untuk mengidentifikasi posisi dalam string yang berfungsi sebagai pemisah.
Return value
Mengembalikan tipe TEXT.
Example
CREATE TABLE interests_test ( name text, intrests text ); INSERT INTO interests_test VALUES ('Zhang San', 'singing,dancing'), ('Li Si', 'soccer,running,drawing'), ('Wang Wu', 'flower arranging,calligraphy,playing piano,sleeping'); SELECT name, REGEXP_SPLIT_TO_TABLE(intrests, ',') FROM interests_test;Perintah ini mengembalikan hasil berikut.
name | regexp_split_to_table --------------------------------- Zhang San | singing Zhang San | dancing Li Si | soccer Li Si | running Li Si | drawing Wang Wu | flower arranging Wang Wu | calligraphy Wang Wu | playing piano Wang Wu | sleeping
REGEXP_SPLIT_TO_ARRAY
Description: Memisahkan string menggunakan ekspresi reguler dan mengembalikan hasilnya sebagai array.
REGEXP_SPLIT_TO_ARRAY(<str> TEXT, <pattern> TEXT)Parameters
str: Wajib. String yang akan dipisahkan.
pattern: Wajib. Ekspresi reguler yang menentukan cara memisahkan string. Karakter khusus dan konstruksi dalam ekspresi reguler digunakan untuk mengidentifikasi posisi dalam string yang berfungsi sebagai pemisah.
Return value
Mengembalikan tipe ARRAY.
Example
CREATE TABLE interests_test ( name text, intrests text ); INSERT INTO interests_test VALUES ('Zhang San', 'singing,dancing'), ('Li Si', 'soccer,running,drawing'), ('Wang Wu', 'flower arranging,calligraphy,playing piano,sleeping'); SELECT name, REGEXP_SPLIT_TO_ARRAY(intrests, ',') FROM interests_test;Perintah ini mengembalikan hasil berikut.
name | regexp_split_to_array ---------------------------------------------------------------- Zhang San | {singing,dancing} Li Si | {soccer,running,drawing} Wang Wu | {"flower arranging",calligraphy,"playing piano",sleeping}
TO_HEX
Description: Mengonversi angka ke representasi heksadesimalnya.
TO_HEX(<number> INT OR BIGINT)Return value
Mengembalikan tipe TEXT.
Example
--Returns: 7fffffff SELECT TO_HEX(2147483647);
TRANSLATE
Description: Mengganti karakter dalam string dengan karakter yang ditentukan.
TRANSLATE(<str> TEXT, FROM <substr> TEXT, TO <newstr> TEXT)Parameters
str: Wajib. String target.
substr: Wajib. Kumpulan karakter dalam string target yang akan diganti.
newstr: Wajib. Kumpulan karakter pengganti.
Return values
Mengembalikan tipe TEXT.
Example
--Returns: a2x5 SELECT TRANSLATE('12345', '143', 'ax');
ROW
Description: Mengembalikan nomor baris tempat formula tersebut berada.
ROW()Fungsi ini hanya didukung di Hologres V1.3 dan versi yang lebih baru.
CatatanJika instans Hologres Anda menjalankan versi sebelum V1.3, lihat Upgrade an instance atau bergabunglah dengan grup DingTalk Hologres untuk memberikan masukan. Untuk informasi lebih lanjut, lihat How do I get more online support?.
Return value
Mengembalikan ARRAY atau TEXT.
Example
CREATE TABLE row_test ( a text, b text ); INSERT INTO row_test VALUES ('0', '0'), ('1', '0'); SELECT a, b FROM row_test WHERE ROW (a, b) = ROW (b, a);Perintah ini mengembalikan hasil berikut.
a | b ------ 0 | 0