Anda di halaman 1dari 19

Fungsi String Query Select

1. CONCAT (str1, str2, ...)


Fungsi ini digunakan untuk mengembalikan string yang dihasilkan dari concatenating
(penggabungan 2 atau lebih) argumen. Bisa terdiri dari satu atau lebih argumen. Jika semua
argumen adalah string nonbinary, maka hasilnya juga string nonbinary. Jika argumen mencakup
string biner, maka hasilnya string biner. Argumen numerik dikonversi ke bentuk string setara
nonbinary-nya.

Fungsi String MYSQL

Secara singkat Achmad Solichin menjelaskan di dalam bukunya yang berjudul MySQL5 Dari
Pemula Hingga Mahir tentang CONCAT, yaitu Fungsi yang digunakan untuk menggabungkan dua
atau lebih string (kolom).

Dalam pembahasan ini, saya akan menggunakan database NORTHWIND untuk demo beberapa
contoh fungsinya.

Contoh:
Untuk menunjukan seperti apa cara kerjanya, pertama-tama saya akan menyeleksi beberapa kolom
tabel customers sebagai bagian experimen ini, sehingga teman-teman nanti akan tahu perbedaan
antara sebelum dan sesudah CONCAT.

SEBELUM:
SELECT CompanyName,CustomerID,Address,PostalCode FROM customers;

Output:

Sebelum CONCAT

SESUDAH:
SELECT CompanyName,CustomerID,
CONCAT (Address,PostalCode) AS Hasil_CONCAT_FullAddress
FROM customers;
Output:

Sesudah CONCAT

2. CONCAT_WS (separator, str1, str2, ...)


Adalah singkatan dari Concatenate With Separator dan merupakan formula khusus dari bentuk
CONCAT(). Argumen pertama adalah separator (pemisah), sedangkan sisanya adalah argumen
biasa. Separator (pemisah) akan ditambahkan diantara perpotongan string. Separator bisa berupa
string atau bisa juga NULL.

Sementara itu, Achmad Solichin menjelaskan di dalam bukunya secara singkat, dimana fungsi ini
digunakan untuk menggabungkan dua atau lebih string (kolom) dengan separator diantara masing-
masing string.

Contoh:
Seperti biasa, saya akan menyeleksi tabel-tabel yang akan digunakan untuk eksperimen terlebih
dahulu, setelah itu saya tunjukan perubahannya. Pada kasus ini saya akan menggunakan tabel
employees untuk eksperimen.

SEBELUM:
SELECT TitleOfCourtesy, FirstName, LastName AS FullName
FROM employees

Output:

Sebelum CONCAT_WS

SESUDAH:
Dengan Separator NULL,
SELECT CONCAT_WS('',TitleOfCourtesy,FirstName,LastName) AS FullName
FROM employees

Output:
CONCAT_WS dengan Separator NULL

Dengan Separator SPASI,


SELECT CONCAT_WS(' ',TitleOfCourtesy,FirstName,LastName) AS FullName
FROM employees

Output:

CONCAT_WS dengan Separator SPASI

Dengan Separator STRING,


SELECT CONCAT_WS(' + ',TitleOfCourtesy,FirstName,LastName) AS FullName
FROM employees
Output:

CONCAT_WS dengan Separator STRING

Dengan Separator ARGUMEN,


SELECT CONCAT_WS(TitleOfCourtesy,TitleOfCourtesy,FirstName,LastName)
AS FullName FROM employees

Output:

CONCAT_WS dengan Separator ARGUMEN

3. MID() atau SUBSTR() atau SUBSTRING()


MID() adalah sinonim dari SUBSTR() adalah sinonim dari SUBSTRING(). Format MID() /
SUBSTR() / SUBSTRING() tanpa argumen len (length/panjang), maka akan mengembalikan nilai
argumen str (string) yang dimulai dari argumen pos (position/posisi). Sedangkan Format dengan
argumen len (length/panjang), maka akan mengembalikan nilai argumen str (string) dengan panjang
karakter argumen len (length/panjang), dan dimulai dari argumen pos (position/posisi).

Sementara itu, Achmad Solichin secara singkat menjelaskan bahwa Fungsi ini digunakan untuk
mengambil atau memotong string dimulai dari karakter awal sebanyak panjang karakter. Sebagai
catatan bahwa di MySQL, index string dimulai dengan 1, bukan 0.

Format Standar Argumen SUBSTR atau SUBSTRING:

/*--Format Standar MID || SUBSTR || SUBSTRING--*/

MID(str,pos)
MID(str FROM pos)
MID(str,pos,len)
MID(str FROM pos FOR len)

SUBSTR(str,pos)
SUBSTR(str FROM pos)
SUBSTR(str,pos,len)
SUBSTR(str FROM pos FOR len)

SUBSTRING(str,pos)
SUBSTRING(str FROM pos)
SUBSTRING(str,pos,len)
SUBSTRING(str FROM pos FOR len)

Contoh:
Seperti biasa, saya akan seleksi tabel terlebih dahulu untuk bahan eksperiman, dan pilihan itu jatuh
pada tabel employees kolom FirstName.

SEBELUM:
SELECT FirstName FROM employees;

Output:
Sebelum SUBSTR atau SUBSTRING

SESUDAH:

MID()

SELECT FirstName AS ASLINYA,


MID(FirstName,2) AS CONTOH_1,
MID(FirstName FROM 3) AS CONTOH_2,
MID(FirstName,2,3) AS CONTOH_3,
MID(FirstName FROM 2 FOR 3) AS CONTOH_4
FROM employees;

Output:
Sesudah MID()

SUBSTR()

SELECT FirstName AS ASLINYA,


SUBSTR(FirstName,2) AS CONTOH_1,
SUBSTR(FirstName FROM 3) AS CONTOH_2,
SUBSTR(FirstName,2,3) AS CONTOH_3,
SUBSTR(FirstName FROM 2 FOR 3) AS CONTOH_4
FROM employees;

Output:
Sesudah SUBSTR()

SUBSTRING()

SELECT FirstName AS ASLINYA,


SUBSTRING(FirstName,2) AS CONTOH_1,
SUBSTRING(FirstName FROM 3) AS CONTOH_2,
SUBSTRING(FirstName,2,3) AS CONTOH_3,
SUBSTRING(FirstName FROM 2 FOR 3) AS CONTOH_4
FROM employees;

Output:
Sesudah SUBSTRING()

4. LENGTH() atau OCTET_LENGTH() atau


CHAR_LENGTH () atau CHARACTER_LENGTH ()
Mengembalikan panjang string str (string), dalam satuan bytes. karakter lebih dari satu disebut
sebagai multiple bytes. Ini berarti bahwa string yang berisi lima karakter bermuatan 2-byte, maka
LENGTH() akan mengembalikan 10-byte, sedangkan CHAR_LENGTH() mengembalikan 5.

Contoh:

SELECT
LENGTH('contoh'),
OCTET_LENGTH('contoh'),
CHAR_LENGTH('contoh'),
CHARACTER_LENGTH('contoh');

Output:
LENGTH() Family

5. LEFT(str, len)
Digunakan untuk mengembalikan len/length/panjang karakter paling kiri dari suatu str/string.
Ataupun NULL jika argumen tersebut adalah NULL, bahkan SPASI.

Sementara itu, Achmad Solichin menjelaskan di dalam bukunya bahwa fungsi ini digunakan untuk
memotong string dari sebelah kiri sebanyak panjang karakter.

Contoh:
Pertama saya pilih phone di tabel shippers sebagai bahan percobaan.

SEBELUM:
SELECT Phone FROM shippers

Output:

Sebelum LEFT(str, len)

SESUDAH:
SELECT LEFT(Phone,7) FROM shippers

Output:
Sesudah LEFT(str, len)

6. RIGHT(str, len)
Adalah kebalikan dari LEFT(), yaitu digunakan untuk mengembalikan len/length/panjang karakter
paling kanan dari suatu str/string. Ataupun NULL jika argumen tersebut adalah NULL, bahkan
SPASI.

Sementara itu, Achmad Solichin menjelaskan di dalam bukunya bahwa fungsi ini digunakan untuk
memotong string dari sebelah kanan sebanyak panjang karakter.

Contoh:
Masih menggunakan contoh di atas kolom phone shippers, sehingga outputnya akan seperti ini:
SELECT RIGHT(Phone,5) FROM shippers

Output:

Sesudah RIGHT(str, len)

7. LTRIM(str)
Fungsi ini berguna untuk mengembalikan string diikuti dengan penghapusan spasi dimulai dari
sebelah kiri.

Sementara itu, Achmad Solichin menjelaskan bahwa, fungsi ini digunakan untuk menghilangkan
spasi di awal string (kiri).
Contoh:

SELECT LTRIM(' barbarian');

Output:

Setelah Fungsi LTRIM(str)

8. RTRIM(str)
Adalah kebalikan dari LTRIM(str) yaitu, berguna untuk mengembalikan string diikuti dengan
penghapusan spasi dimulai dari sebelah kanan.

Sementara itu, Achmad Solichin menjelaskan bahwa, fungsi ini digunakan untuk menghilangkan
spasi di akhir string (kanan).

Contoh:

SELECT RTRIM(' barbarian ');

Output:

Setelah Fungsi RTRIM(str)

9. TRIM(str)
Adalah fungsi yang berguna untuk mengembalikan string diikuti dengan penghapusan spasi baik di
sebelah kanan maupun kiri.

Sementara itu, Achmad Solichin menjelaskan bahwa, fungsi ini digunakan untuk menghilangkan
spasi di awal dan akhir string (kiri dan kanan).

Format Argumen TRIM() - #Optional


Argumen ini bersifat optional, jadi jika tidak dicantumkan maka secara default fungsi TRIM() akan
menghapus spasi baik disebelah kiri maupun kanan.
TRIM( [BOTH] | [LEADING] | [TRAILING] [remstr] [FROM] str)

atau

TRIM([remstr] [FROM] str)

/*--KETERANGAN

| = Dibaca atau
[] = Sebagai batas argumen

*Untuk lebih jelasnya seperti apa cara penggunaannya bisa Anda simak pada contoh di
bawah ini!

--*/

Contoh:

SELECT
TRIM(' barbarian pekka archer '),
TRIM(LEADING 'x' FROM 'xxxbarxxx'),
TRIM(BOTH 'x' FROM 'xxxbarxxx'),
TRIM(TRAILING 'xyz' FROM 'barxxyz');

Output:
Setelah TRIM()

10. REPLACE(str, from_str, to_str)


Fungsi ini berguna untuk mengembalikan str(string) dengan kondisi string yang ditentukan dengan
from_str, dan digantikan oleh to_str. REPLACE() bersifat case-sensitive, artinya kondisi pada
argumen from_str maupun to_str sangat diperhatikan antara CAPITAL atau small letter.

Sementara itu, Achmad Solichin menjelaskan bahwa, fungsi ini digunakan untuk mengganti suatu
string dengan string yang lain.

Contoh:

SELECT REPLACE ('www.gatewan.com', 'w', 'x' );

Output:

Setelah REPLACE()

11. REPEAT(str, count)


Berguna untuk mengulangi string dalam jumlah tertentu.

Fungsi ini berguna untuk mengembalikan string yang terdiri dari str(string), diulang dalam
count(berapa kali) tertentu. Jika count kurang dari 1, maka akan dikembalikan dengan string kosong.
Jadi, REPEAT() hanya akan mengembalikan NULL jika salah satunya(count) atau kedua
argumennya NULL.
Sementara itu, Achmad Solichin menjelaskan bahwa, fungsi ini digunakan untuk menduplikasi suatu
string sebanyak jumlah.

Contoh:

SELECT
REPEAT('MySQL', 3),
REPEAT('MySQL', 0);

Output:

Setelah REPEAT()

12. REVERSE(str)
Membalik karakter suatu string.

Fungsi ini berguna untuk mengembalikan str(string) dengan urutan karakter terbalik.

Sementara itu, Achmad Solichin menjelaskan bahwa, fungsi ini digunakan untuk membalik string.

Contoh:

SELECT
REVERSE('una'),
REVERSE('edeg');

Ouput:
Setelah REVERSE()

13. LCASE(str)
Kepanjangan dari Lower Case, yaitu sinonim dari LOWER(), berguna untuk mengembalikan
str(string) dengan cara mengubahnya menjadi huruf kecil (small letter) sesuai dengan set mapping
karakternya. Secara default adalah latin1 (1cp1252 Eropa Barat).

Sementara itu, Achmad Solichin menjelaskan bahwa, fungsi ini digunakan untuk mengubah string
menjadi huruf kecil (lowercase).

Contoh:

SELECT
LOWER('GATEWAN'),
LCASE('GATEWAN');

Output:

Setelah LCASE() dan LOWER()

14. UCASE(str)
Kepanjangan dari Upper Case, yaitu sinonim dari UPPER(). berguna untuk mengembalikan
str(string) dengan cara mengubahnya menjadi huruf besar (CAPITAL) sesuai dengan set mapping
karakternya. Secara default adalah latin1 (1cp1252 Eropa Barat).
Sementara itu, Achmad Solichin menjelaskan bahwa, fungsi ini digunakan untuk mengubah string
menjadi huruf besar (uppercase).

Contoh:

SELECT
UPPER('wawan beneran'),
UCASE('wawan beneran');

Ouput:

Setelah UPPER() dan UCASE()

Anda mungkin juga menyukai