Di MySQL, RPAD()
fungsi memungkinkan Anda untuk mengisi bagian kanan string dengan satu atau lebih karakter.
Cara kerjanya adalah, Anda menentukan string untuk pad, panjang padding, serta string karakter yang akan digunakan untuk padding.
Sintaks
Sintaksnya seperti ini:
RPAD(str,len,padstr)
Dimana str
adalah string untuk pad, len
adalah panjang string yang diinginkan dalam karakter setelah semua padding diterapkan, dan padstr
adalah string untuk pad dengannya.
Contoh 1 – Penggunaan Dasar
Berikut adalah contoh padding bagian kanan string dengan tanda seru:
SELECT RPAD('Cat', 6, '!') AS Result;
Hasil:
+--------+ | Result | +--------+ | Cat!!! | +--------+
Dalam contoh ini argumen kedua adalah 6
, yang berarti bahwa seluruh string harus memiliki panjang 6 karakter setelah semua padding diterapkan. Argumen ketiga menentukan karakter mana yang akan digunakan untuk padding.
Jadi dalam hal ini, jika kita hanya ingin satu tanda seru, kita bisa melakukan ini:
SELECT RPAD('Cat', 4, '!') AS Result;
Hasil:
+--------+ | Result | +--------+ | Cat! | +--------+
Contoh 2 – Banyak Karakter
Anda tidak terbatas hanya pada satu karakter. Anda dapat mengisi string dengan sejumlah karakter.
Misalnya, kita dapat mengambil contoh sebelumnya dan menambahkan spasi sebelum tanda seru:
SELECT RPAD('Cat', 5, ' !') AS Result;
Hasil:
+--------+ | Result | +--------+ | Cat ! | +--------+
Perhatikan bahwa kami juga meningkatkan jumlah karakter menjadi 5
untuk mengakomodasi karakter ekstra.
Berikut contoh lain menggunakan karakter yang berbeda:
SELECT RPAD('Dog', 7, 'gone') AS Result;
Hasil:
+---------+ | Result | +---------+ | Doggone | +---------+
Contoh 3 – Argumen Kedua Terlalu Kecil
Jika nilai argumen kedua terlalu kecil, Anda mungkin tidak akan mendapatkan padding:
SELECT RPAD('Cat', 3, '!') AS Result;
Hasil:
+--------+ | Result | +--------+ | Cat | +--------+
Dalam kasus lain, Anda bisa berakhir dengan string padding dipotong pendek, atau bahkan bisa memotong string asli pendek:
SELECT RPAD('Dog', 6, 'gone'), RPAD('Dog', 2, 'gone');
Hasil:
+------------------------+------------------------+ | RPAD('Dog', 6, 'gone') | RPAD('Dog', 2, 'gone') | +------------------------+------------------------+ | Doggon | Do | +------------------------+------------------------+
Perhatikan bahwa contoh-contoh ini hanya untuk tujuan demonstrasi. Dalam kebanyakan kasus, Anda tidak akan menggunakan RPAD()
untuk hanya menggabungkan dua kata bersama-sama. Untuk melakukannya, Anda sebaiknya menggunakan CONCAT()
sebagai gantinya.
Contoh 4 – Contoh Basis Data
Berikut ini contoh memilih data dari database, dan mengisinya di sisi kanannya:
SELECT ArtistName, RPAD(ArtistName, 20, '.') FROM Artists;
Hasil:
+------------------------+---------------------------+ | ArtistName | RPAD(ArtistName, 20, '.') | +------------------------+---------------------------+ | Iron Maiden | Iron Maiden......... | | AC/DC | AC/DC............... | | Allan Holdsworth | Allan Holdsworth.... | | Buddy Rich | Buddy Rich.......... | | Devin Townsend | Devin Townsend...... | | Jim Reeves | Jim Reeves.......... | | Tom Jones | Tom Jones........... | | Maroon 5 | Maroon 5............ | | The Script | The Script.......... | | Lit | Lit................. | | Black Sabbath | Black Sabbath....... | | Michael Learns to Rock | Michael Learns to Ro | | Carabao | Carabao............. | | Karnivool | Karnivool........... | | Birds of Tokyo | Birds of Tokyo...... | | Bodyjar | Bodyjar............. | +------------------------+---------------------------+