Cara menggunakan mysql substring

Pada artikel ini, akan dibahas bagaimana mengambil substring dalam suatu string dari data menggunakan statement SQL. Untuk mempermudah pembahasan, kita akan mengambil studi kasus, lagi-lagi tentang data mahasiswa.

Misalkan Anda diberikan data mahasiswa dalam tabel berikut ini.

NIM        NAMA MAHASISWA
M0197001   Dwi Amalia Fitriani
M0197002   Faza Fauzan Khosiyarrohman
M0198002   Nada Hasanah
M0199003   Rosihan Ari Yuana
M0199005   Ismail Hasan
M0199006   Yusron Rizqi
M0297003   Yohana Dwi Ariyanto
M0298004   Subari
M0298005   Rusmini

Kemudian Anda ingin menjawab pertanyaan berikut ini:

  1. Siapa saja mahasiswa yang berangkatan 97?
  2. Berapa jumlah mahasiswa yang merupakan angkatan 99?
  3. Tampilkan jumlah mahasiswa untuk setiap angkatan.
  4. Tampilkan jumlah mahasiswa dari jurusan yang berkode M01 (dengan asumsi bahwa M0X menunjukkan kode Jurusan)
  5. Tampilkan jumlah mahasiswa untuk setiap jurusan (M01 dan M02)

Kalau Anda perhatikan data di atas, tidak tercantum field ANGKATAN. Haruskah field tersebut ada? Ternyata tidak harus. Untuk mendapatkan angkatan mahasiswa, Anda cukup mengambil informasi dari NIM mahasiswanya. Bagaimana caranya?

Tahun angkatan mahasiswa dapat dilihat pada bagian NIM, yaitu mulai pada karakter ke 4 s/d 5, sebagai contoh NIM M0197001 memiliki tahun angkatan 97. Dengan menggunakan function substring() pada SQL, Anda dapat memperoleh tahun angkatan mahasiswa tersebut.

Sekarang kita akan menjawab soal No 1.

Statement SQL untuk menjawab soal ini adalah:

SELECT * FROM mhs WHERE substring(NIM, 4, 2) = '97';

Maksud dari perintah substring(NIM, 4, 2) pada query di atas adalah mencari karakter 4 dan 5 dari field NIM yang sama dengan ’97’. Maksud parameter 2 pada function tersebut menunjukkan jumlah karakter yang akan dicek (mulai dari karakter ke 4).

Selanjutnya akan kita bahas soal No. 2

Statement untuk query ini adalah:

SELECT count(*) FROM mhs WHERE substring(NIM, 4, 2) = '99';

Saya kira penjelasan dari query ini hampir sama dengan No. 1

Untuk No. 3, statement SQL nya adalah:

SELECT substring(NIM, 4, 2) as Angkatan, Count(*)
FROM mhs
GROUP BY Angkatan;

Pada soal No. 1 dan 2, function substring() terletak di bagian WHERE, sedangkan pada soal No. 3 ini, substring() terletak di klausa SELECT. Hal ini tidak ada masalah. Karena kita akan menampilkan tahun angkatan, maka berikan substring(NIM, 4, 2) di bagian SELECT. Selanjutnya tahun angkatan ini kita buat alias untuk melakukan grouping ketika melakukan perhitungan jumlah mahasiswa setiap angkatan.

Sedangkan untuk soal No. 4, statement SQL nya adalah:

SELECT count(*) FROM mhs WHERE substring(NIM, 1, 3) = 'M01';

Mengapa menggunakan substring(NIM, 1, 3)? Ya… karena untuk kode jurusan ini memiliki 3 karakter yang diawali mulai dari karakter pertama dari NIM.

SQL (Structured Query Language) merupakan bahasa yang paling umum digunakan dan populer karena penggunaannya yang fleksibel dan mudah untuk dipelajari. Tidak hanya itu, SQL menjadi salah satu bahasa yang mudah untuk bisa diakses dan bisa digunakan oleh multiuser dengan kedalaman kompleks yang memungkinkan pengguna untuk melakukan analisis data.

Jika kamu baru memasuki bidang Data Science, SQL menjadi pilihan yang tepat untuk memulai perjalananmu untuk mengekstrak wawasan database. Karena fungsinya yang digunakan untuk pembuatan hingga modifikasi data yang ada di database, SQL dilengkapi dengan banyak sekali fungsi. Mulai dari fungsi untuk numerik, teks hingga agregasi tersedia di SQL.

Concat dan Substring merupakan contoh fungsi yang ada di SQL. Kedua fungsi ini akan banyak digunakan untuk menggabungkan dan memecah data yang berbentuk string. Dalam artikel ini akan dibahas cara penggunaan kedua fungsi ini yang bisa dimanfaatkan dengan menggunakan SQL. Caranya gimana? Yuk, simak pembahasan berikut!

1. Memecah Data dengan Fungsi SUBSTRING

Fungsi String SQL yang pertama adalah SUBSTRING(). Fungsi ini digunakan untuk memecah string menjadi substring. Fungsi ini membutuhkan 2 argumen utama dan 1 argumen tambahan (opsional). Berikut syntax dasarnya:

SUBSTRING (nama_kolom, index_awal, jumlah_karakter)

Keterangan:

  • nama_kolom, adalah nama kolom tabel yang akan diambil karakternya (sebagai sumber string)

  • index_awal, diisi dengan angka yang berfungsi sebagai index awal karakter yang ingin diambil, dihitung dari index 1 pada karakter pertama, index 2 pada karakter kedua, dan seterusnya. Jika diinput dengan nilai negatif, index akan dihitung mulai dari akhir string.

  • jumlah_karakter, adalah argumen opsional yang jika tidak ditulis, fungsi SUBSTRING akan mengambil seluruh karakter hingga akhir string. Jika ditulis, maka ini berfungsi sebagai batasan jumlah karakter yang akan diambil.

Contoh:

Misalkan kita memiliki tabel barang berisikan data kode barang seperti berikut,

NO

KodeBarang

1

AB1234

2

BC1567

3

CD0234

4

AB3456

Baca juga : Saatnya Belajar SQL, Kenali Rekomendasi Query SQL Bagi Pemula

2. Contoh Penggunaan Fungsi SUBSTRING

Dari tabel Kode Barang di atas, misalkan kita ingin mengetahui berapa jumlah barang yang kodenya berawalan AB. Maka perintah SQL yang harus diberikan adalah:

SELECT Count(*) FROM barang WHERE SUBSTRING(KodeBarang,1,2)='AB'

Atau, kita ingin menampilkan data dengan kode barang tanpa dua huruf di depannya, maka perintahnya adalah:

SELECT KODEBARANG FROM barang;
SELECT SUBSTRING(KodeBarang,3,4) FROM barang;
+--------------------------+
| SUBSTRING(KodeBarang,3,4)|
+--------------------------+
| 1234                   |
| 1567                     |
| 0234                     |
| 3456                     |
+--------------------------+

3. Menggabungkan Data dengan Fungsi CONCAT

Fungsi SQL selanjutnya adalah CONCAT() singkatan dari Concatenating. Fungsi ini berkebalikan dengan SUBSTRING() yaitu bertujuan untuk menggabungkan beberapa string menjadi satu buah string utuh. Penulisan syntax dasar dari fungsi CONCAT:

SELECT CONCAT(string1,string2,[string_n])from nama_table

**dengan catatan, jika salah satu string diisi dengan NULL, maka output yang dihasilkan adalah NULL.

4. Contoh Penggunaan Fungsi CONCAT

Contoh penggunaan fungsi CONCAT adalah misalkan kita memiliki tabel kode seperti berikut.

KodeHuruf

KodeAngka

AB

1234

BC

1567

CD

0234

AB

3456

Kemudian, kita ingin menggabungkan langsung kedua kolom yang ada dengan fungsi CONCAT() SQL. Perintahnya adalah berikut:

SELECT CONCAT(KodeHuruf,KodeAngka) FROM kode
+----------------------------+
| CONCAT(KodeHuruf,KodeAngka)|
+----------------------------+
| AB1234                     |
| BC1567                     |
| CD0234                     |
| AB3456                     |
+----------------------------+

Baca juga : Catat! Ini 3 Keuntungan Belajar SQL dalam Mengolah Data

Masih banyak variasi query SQL selain CONCAT maupun query-query lain yang sangat berguna menunjang pengerjaan database. Sudah siap menguasai SQL? Yuk selesaikan modul Fundamental SQL: INNER JOIN dan modul SQL lainnya di DQLab.

Ragu karena tidak memiliki background IT? Jangan khawatir, kamu tetap bisa menguasai SQL dan Ilmu Data Science untuk siap berkarir di revolusi industri 4.0. Bangun proyek dan portofolio datamu bersama DQLab. Sign Up atau isi form dibawah ini sekarang untuk mulai belajar data di DQLab.id!

Apa itu substring MySQL?

Sama dengan pada bahasa pemrograman, substring pada mysql berfungsi untuk mengambil sebagian karakter atau seluruhnya dari suatu field di dalam database.

Substring SQL untuk apa?

Concat dan Substring merupakan contoh fungsi yang ada di SQL. Kedua fungsi ini akan banyak digunakan untuk menggabungkan dan memecah data yang berbentuk string.

Sintaks apa yang digunakan untuk menghapus data dalam SQL?

Perintah DELETE digunakan untuk menghapus baris data pada suatu tabel dalam database.