Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai 1 November 2025. Jika Anda ingin menggunakan Python UDFs, buat UDFs sebelum tanggal tersebut. Python yang ada UDFs akan terus berfungsi seperti biasa. Untuk informasi lebih lanjut, lihat posting blog
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Fungsi COLLATE
Fungsi COLLATE mengesampingkan pemeriksaan kolom string atau ekspresi.
Untuk informasi tentang cara membuat tabel menggunakan pemeriksaan database, lihatCREATE TABLE.
Untuk informasi tentang cara membuat database menggunakan pemeriksaan database, lihat. BUAT BASIS DATA
Sintaksis
COLLATE(
string
, 'case_sensitive' | 'cs' | 'case_insensitive' | 'ci');
Argumen
- tali
-
Kolom string atau ekspresi yang ingin Anda timpa.
- 'case_sensitive' | 'cs' | 'case_insensitive' | 'ci'
-
Sebuah konstanta string dari nama pemeriksaan. Amazon Redshift hanya mendukung nilai berikut untuk parameter ini:
case_sensitive
cs
case_insensitive
ci
case_sensitive dan cs dapat dipertukarkan dan menghasilkan hasil yang sama. Demikian pula, case_insensitive dan ci dapat dipertukarkan dan menghasilkan hasil yang sama.
Jenis pengembalian
Fungsi COLLATE mengembalikan VARCHAR
atau CHAR
tergantung pada jenis ekspresi input pertama. Fungsi ini hanya mengubah pengumpulan argumen input pertama dan tidak akan mengubah nilai outputnya.
Contoh
Untuk membuat tabel T dan mendefinisikan col1 dalam tabel T sebagaicase_sensitive
, gunakan contoh berikut.
CREATE TABLE T ( col1 Varchar(20) COLLATE case_sensitive ); INSERT INTO T VALUES ('john'),('JOHN');
Saat Anda menjalankan kueri pertama, Amazon Redshift hanya kembali. john
Setelah fungsi COLLATE berjalan pada col1, pemeriksaan menjadi. case_insensitive
Query kedua mengembalikan keduanya john
danJOHN
.
SELECT * FROM T WHERE col1 = 'john';
+------+ | col1 | +------+ | john | +------+
SELECT * FROM T WHERE COLLATE(col1, 'case_insensitive') = 'john';
+------+ | col1 | +------+ | john | | JOHN | +------+
Untuk membuat tabel A dan mendefinisikan col1 dalam tabel A sebagaicase_insensitive
, gunakan contoh berikut.
CREATE TABLE A ( col1 Varchar(20) COLLATE case_insensitive ); INSERT INTO A VALUES ('john'),('JOHN');
Saat Anda menjalankan kueri pertama, Amazon Redshift mengembalikan keduanya danjohn
. JOHN
Setelah fungsi COLLATE berjalan pada col1, pemeriksaan menjadi. case_sensitive
Kueri kedua hanya mengembalikanjohn
.
SELECT * FROM A WHERE col1 = 'john';
+------+ | col1 | +------+ | john | | JOHN | +------+
SELECT * FROM A WHERE COLLATE(col1, 'case_sensitive') = 'john';
+------+ | col1 | +------+ | john | +------+