Terkadang Anda perlu mengisi string dengan spasi. Atau mungkin Anda akan menambahkannya dengan karakter lain. Terkadang Anda perlu meletakkannya di sebelah kiri. Di lain waktu Anda perlu memasangnya di sebelah kanan. Atau mungkin Anda perlu melapisinya di kedua sisi.
Semua hal di atas dapat dilakukan di MySQL menggunakan LPAD()
dan/atau RPAD()
fungsi string.
Sintaks
Sintaks dari masing-masing fungsi ini seperti ini:
LPAD(str,len,padstr) RPAD(str,len,padstr)
Dimana str
adalah string yang perlu diisi, len
adalah panjang string yang diinginkan dalam karakter setelah semua padding diterapkan, dan padstr
adalah string untuk pad dengannya.
Contoh – LPAD()
Berikut ini contoh padding sisi kiri string:
SELECT LPAD('Cat', 6, '*') AS Result;
Hasil:
+--------+ | Result | +--------+ | ***Cat | +--------+
Dalam contoh ini kita pad string dengan karakter asterisk (*
). Kami juga menentukan 6
, yang berarti seluruh string harus memiliki panjang 6 karakter setelah semua padding diterapkan.
Jadi jika kita mengubah 6
untuk mengatakan, 10
, inilah yang terjadi:
SELECT LPAD('Cat', 10, '*') AS Result;
Hasil:
+------------+ | Result | +------------+ | *******Cat | +------------+
Contoh – RPAD()
RPAD()
fungsi bekerja persis sama dengan LPAD()
, dengan pengecualian menambahkan karakter ke kanan sisi string:
SELECT RPAD('Cat', 6, '*') AS Result;
Hasil:
+--------+ | Result | +--------+ | Cat*** | +--------+
Contoh – Keduanya
Anda dapat menggunakan kedua fungsi secara bersamaan untuk memasang string di kedua sisi. Untuk melakukannya, cukup berikan satu fungsi ke fungsi lainnya sebagai argumen.
Seperti ini:
SELECT LPAD(RPAD('Cat', 6, '*'), 9, '*') AS Result;
Hasil:
+-----------+ | Result | +-----------+ | ***Cat*** | +-----------+
Beberapa Karakter
Anda tidak terbatas hanya pada satu karakter. Anda dapat mengisi string dengan sejumlah karakter. Ini contohnya:
SELECT RPAD('She Loves Me ', 30, 'Yeah! ') AS Result;
Hasil:
+--------------------------------+ | Result | +--------------------------------+ | She Loves Me Yeah! Yeah! Yeah! | +--------------------------------+