PostgreSQL SUBSTRING() Fungsi dengan Contoh Regex

⚡ Ringkasan Cerdas

PostgreSQL SUBSTRING extracFungsi ini mengembalikan sebagian dari sebuah string, menggunakan posisi awal dan panjang opsional, dan juga mencocokkan teks dengan ekspresi reguler POSIX untuk mengekstrak pola seperti angka atau kode.

  • 📋 sintaks: substring( string [dari awal] [untuk panjang] ) mengembalikan sebagian dari string sumber.
  • 1️⃣ Posisi: Posisi karakter dimulai dari 1, dan jika panjangnya dihilangkan, maka akan terbaca hingga akhir string.
  • 🔎 Ekspresi reguler: SUBSTRING(string FROM pattern) extracIni adalah teks pertama yang cocok dengan ekspresi reguler POSIX.
  • 🧮 Grouping: Grup dalam tanda kurung pada pola hanya mengembalikan bagian yang sesuai dengan kecocokan tersebut.
  • ️ pgAdmin: Setiap kueri substring berjalan dengan cara yang sama di dalam editor kueri pgAdmin.
  • 🤖 Bantuan AI: Asisten AI menghasilkan dan menjelaskan pola regex untuk ekstraksi substring yang akurat.traction.

PostgreSQL Fungsi SUBSTRING dengan Regex

Apa itu PostgreSQL Substring?

The PostgreSQL Fungsi substring membantu Anda untuk mengekstraktract dan mengembalikan sebagian dari sebuah string. Alih-alih mengembalikan seluruh string, ia hanya mengembalikan sebagiannya, yang berguna untuk memangkas kode dan membaca bidang dengan lebar tetap.

Sintaksis

The PostgreSQL Fungsi substring mengambil sintaks berikut:

substring( string [from starting_position] [for length] )

Parameter Teknis

Parameter-parameter berikut digunakan dengan fungsi substring:

string String sumber yang tipe datanya varchar, char, string, dll.
posisi awal Parameter opsional. Parameter ini menunjukkan tempat di mana extracKonversi string akan dimulai. Jika Anda menghilangkan parameter ini, konversi akan dilakukan.traction dimulai dari posisi 1, yaitu karakter pertama dalam string.
panjangnya Parameter opsional. Parameter ini menunjukkan jumlah karakter yang akan diekstrak.tracdiambil dari string. Jika Anda menghilangkan parameter ini, fungsi extracts dari starting_position ke akhir string.

contoh

Dalam contoh ini, kita ingin ...tract 4 karakter pertama dari kata Guru99:

SELECT substring('Guru99' for 4);

Perintah tersebut akan mengembalikan hasil berikut:

PostgreSQL Substring

Kami tidak menentukan posisi awal, jadi mantantracPembagian substring dimulai pada posisi 1. Empat karakter diekstraksi.tracted untuk mengembalikan hasil di atas.

Contoh berikut menunjukkan cara menentukan posisi awal:

SELECT substring('Guru99' from 1 for 4);

Perintah tersebut akan mengembalikan hasil berikut:

PostgreSQL Substring

Kami menetapkan bahwa mantantracUrutan substring harus dimulai dari posisi 1, dan harus terdiri dari 4 karakter.tracted.

Mari kita keluartract 99 dari string Guru99:

SELECT substring('Guru99' from 5);

Perintah tersebut akan mengembalikan hasil berikut:

PostgreSQL Substring

Kami menetapkan posisi awal sebagai 5. Karena jumlah karakter yang akan diekstraktracTed tidak disebutkan secara spesifik, mantantraction berjalan hingga ke ujung string.

Berikut adalah contoh lain:

SELECT substring('Guru99' from 5 for 2);

Perintah tersebut akan mengembalikan hasil berikut:

PostgreSQL Substring

Kami mulai daritraction pada posisi 5, dan 2 karakter dikeluarkantracted.

Perhatikan tabel Buku yang diberikan di bawah ini:

PostgreSQL Tabel Buku Substring

Kami ingin mendapatkan gambaran kasar tentang nama setiap buku. Kita bisa...trachanya 15 karakter pertama dari kolom nama pada tabel:

SELECT
   id,
   SUBSTRING(name, 1, 15 ) AS name_initial
FROM
   Book
ORDER BY
   id;

Perintah tersebut akan mengembalikan hasil berikut:

PostgreSQL Hasil substring

Kami sekarang memiliki gambaran kasar tentang nama setiap buku.

Mencocokkan Substring dengan SQL Regular Expression

In PostgreSQL, Anda bisa extracSebuah substring yang cocok dengan ekspresi reguler POSIX yang ditentukan. Dalam hal ini, fungsi substring menggunakan sintaks berikut:

SUBSTRING(string FROM matching_pattern)

or

SUBSTRING(string, matching_pattern);

Berikut penjelasan mengenai parameter di atas. String tersebut adalah string sumber, yang tipe data adalah varchar, char, string, dan sebagainya. `matching_pattern` adalah pola yang digunakan untuk mencari di dalam string.

contoh

SELECT
   SUBSTRING (
      'Your age is 22',
      '([0-9]{1,2})'
   ) as age;

Perintah tersebut akan mengembalikan hasil berikut:

Mencocokkan Substring dengan SQL Regular Expression

String input kita adalah "Usia Anda adalah 22". Dalam pola tersebut, kita mencari pola numerik; ketika ditemukan, fungsi substring akan dijalankan.tracHanya dua karakter.

Cara Mencocokkan Substring Menggunakan pgAdmin

Sekarang mari kita lihat bagaimana tindakan-tindakan ini dilakukan menggunakan pgAdmin. Kueri yang tidak memerlukan basis data dapat dieksekusi langsung dari jendela editor kueri. Cukup lakukan hal berikut:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2) Di pgAdmin, klik ikon Alat Kueri.

Mencocokkan Substring Menggunakan pgAdmin

Jendela editor kueri akan terbuka.

Langkah 3) Ketikkan kueri berikut di jendela editor.

SELECT substring('Guru99' for 4);

Langkah 4) Klik ikon Jalankan untuk menjalankan kueri.

Mencocokkan Substring Menggunakan pgAdmin

Langkah 5) Eksekusi kueri telah selesai. Kueri tersebut seharusnya mengembalikan hasil berikut:

Mencocokkan Substring Menggunakan pgAdmin

Contoh 2:

SELECT substring('Guru99' from 1 for 4);

Seharusnya mengembalikan hal berikut:

Mencocokkan Substring Menggunakan pgAdmin

Berikut contoh selanjutnya:

SELECT substring('Guru99' from 5);

Seharusnya mengembalikan hal berikut:

Mencocokkan Substring Menggunakan pgAdmin

Contoh 3:

SELECT substring('Guru99' from 5 for 2);

Seharusnya mengembalikan hal berikut:

Mencocokkan Substring Menggunakan pgAdmin

Sekarang, mari kita jalankan contoh menggunakan tabel Buku di database Demo:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2) Dari bilah navigasi di sebelah kiri, klik Database, lalu klik Demo.

Mencocokkan Substring Menggunakan pgAdmin

Langkah 3) Ketik kueri di editor kueri:

SELECT
   id,
   SUBSTRING(name, 1, 15 ) AS name_initial
FROM
   Book
ORDER BY
   id;

Langkah 4) Klik tombol Jalankan.

Mencocokkan Substring Menggunakan pgAdmin

Seharusnya mengembalikan hal berikut:

PostgreSQL Hasil substring

Kami sekarang memiliki ide dasar tentang nama setiap buku.

Mencocokkan Substring dengan SQL Regular Expression

Untuk melakukan hal yang sama pada pgAdmin, lakukan hal berikut:

Langkah 1) Masuk ke akun pgAdmin Anda.

Langkah 2) Klik ikon Alat Kueri.

Mencocokkan Substring dengan SQL Regular Expression

Jendela editor kueri akan terbuka.

Langkah 3) Ketikkan kueri berikut di jendela editor.

SELECT
   SUBSTRING (
      'Your age is 22',
      '([0-9]{1,2})'
   ) as age;

Langkah 4) Klik ikon Jalankan untuk menjalankan kueri.

Mencocokkan Substring dengan SQL Regular Expression

Seharusnya mengembalikan hal berikut:

Mencocokkan Substring dengan SQL Regular Expression

Unduh Database yang digunakan dalam Tutorial ini

Pertanyaan Umum Demo Slot

SUBSTR adalah alias yang lebih pendek dari SUBSTRING dan mengembalikan sebagian dari sebuah string. SUBSTRING juga mendukung kata kunci FROM dan FOR standar SQL serta ekspresi reguler POSIX, sedangkan SUBSTR hanya menerima argumen posisi dan panjang yang dipisahkan koma.

PostgreSQL Fungsi SUBSTRING berbasis satu, jadi karakter pertama berada di posisi 1, bukan 0. Memberikan posisi awal 1 akan mengembalikan string dari karakter pertamanya dan seterusnya.

Ketika pola POSIX tidak cocok dengan apa pun, SUBSTRING mengembalikan NULL, bukan string kosong. Menguji hasilnya dengan IS NULL memungkinkan Anda menangani baris di mana pola yang diharapkan tidak ada.

Gunakan ekspresi reguler yang menangkap apa yang mengikuti karakter tersebut. Misalnya, SUBSTRING(email FROM '@(.*)') akan mengembalikan semua yang ada setelah tanda @, sehingga Anda mendapatkan bagian domain dari setiap alamat email.

Gunakan SUBSTRING ketika Anda membutuhkan teks yang cocok pertama sebagai nilai sederhana. Pilih regexp_matches() ketika Anda menginginkan setiap kecocokan atau beberapa grup tangkapan dikembalikan sebagai array, karena SUBSTRING hanya mengembalikan kecocokan pertama.

Asisten AI seperti GitHub Copilot mengubah deskripsi bahasa Inggris biasa menjadi pola POSIX, menjelaskan apa yang cocok dengan setiap token, dan menyarankan string uji, yang mengurangi proses coba-coba saat membangun eksklusi substring.tracpertanyaan tion.

Ya. Jelaskan bagian teks yang Anda inginkan, dan asisten AI akan membuat draf panggilan SUBSTRING dengan posisi atau ekspresi reguler yang tepat, yang dapat Anda jalankan dan sempurnakan di dalam pgAdmin.

Ya, pencocokan POSIX SUBSTRING secara default peka terhadap huruf besar dan kecil. Untuk mencocokkan tanpa memperhatikan huruf besar dan kecil, ubah kedua input menjadi huruf kecil, misalnya SUBSTRING(lower(name) FROM lower(pattern)), sehingga huruf besar dan huruf kecil diperlakukan sama.

Ringkaslah postingan ini dengan: