Di SQL Server, Anda dapat menggunakan LEN()
berfungsi untuk mengembalikan jumlah karakter dalam sebuah string. Ini adalah fungsi Transact-SQL yang juga dapat digunakan di database Azure.
Di MySQL, Anda perlu menggunakan CHAR_LENGTH()
fungsi.
Contoh
Berikut ini contohnya masing-masing.
SQL Server (T-SQL)
SELECT LEN('Cat') AS 'T-SQL';
Hasil:
T-SQL ----- 3
MySQL
SELECT CHAR_LENGTH('Cat') AS MySQL;
Hasil:
+-------+ | MySQL | +-------+ | 3 | +-------+
Hati-hati dengan Trailing Blank!
Satu perbedaan antara fungsi-fungsi ini adalah dalam cara mereka memperlakukan trailing blank (misalnya spasi di akhir string). LEN()
T-SQL fungsi tidak termasuk trailing blank, sedangkan MySQL CHAR_LENGTH()
fungsi termasuk mereka.
Jadi jika kita menambahkan trailing blank ke contoh sebelumnya, kita mendapatkan yang berikut ini.
SQL Server (T-SQL)
SELECT LEN('Cat ') AS 'T-SQL';
Hasil:
T-SQL ----- 3
MySQL
SELECT CHAR_LENGTH('Cat ') AS MySQL;
Hasil:
+-------+ | MySQL | +-------+ | 4 | +-------+
Jika Anda perlu mengecualikan trailing blank di MySQL, Anda harus membungkus string dalam TRIM()
fungsi. Seperti ini:
SELECT CHAR_LENGTH(TRIM('Cat ')) AS 'MySQL with TRIM';
Hasil:
+-----------------+ | MySQL with TRIM | +-----------------+ | 3 | +-----------------+
Tapi Jangan Khawatir tentang Memimpin Kosong!
Kedua LEN()
T-SQL fungsi dan MySQL CHAR_LENGTH()
fungsi termasuk kosong di depan.
SQL Server (T-SQL)
SELECT LEN(' Cat') AS 'T-SQL';
Hasil:
T-SQL ----- 4
MySQL
SELECT CHAR_LENGTH(' Cat') AS 'MySQL';
Hasil:
+-------+ | MySQL | +-------+ | 4 | +-------+