Cara Pintar Menggunakan SQL Concatenation String

Cara Pintar Menggunakan SQL Concatenation String

Bahasa Kueri Terstruktur (SQL) adalah alat yang sangat kuat, dan alat yang dikemas penuh dengan fitur. Setelah Anda paling menguasai perintah SQL penting , Anda bisa mulai sedikit lebih kreatif dengan SQL Anda. Hari ini saya akan menunjukkan kepada Anda semua yang perlu Anda ketahui tentang string rangkaian SQL.





Ada banyak dialek SQL yang berbeda. Untuk semua contoh ini, saya menggunakan PostgreSQL varian.





cara membuat gambar menjadi satu

Apa Itu Penggabungan?

Concatenation berarti menggabungkan dua hal menjadi satu. Anda mungkin telah menggunakannya dalam bahasa pemrograman untuk menggabungkan dua string. Mungkin Anda memiliki variabel nama depan dan nama belakang yang Anda gabungkan sebagai variabel nama lengkap.





Penggabungan adalah cara yang sangat berguna untuk menggabungkan dua string menjadi satu. PHP menggunakan titik untuk menggabungkan string bersama-sama, sedangkan JavaScript dan jQuery menggunakan tanda plus.

Penggabungan dalam SQL bekerja persis sama. Anda menggunakan operator khusus untuk menggabungkan dua hal menjadi satu. Ini contohnya di Kode semu :



first_name = Joe
last_name = Coburn
whole_name = first_name + last_name

Dalam bahasa pemrograman, penggabungan membuat kode lebih mudah dibaca. Jika kode Anda selalu perlu mengakses dua string, menggabungkannya menjadi satu membuatnya lebih mudah diingat, dan mengurangi panjang kode.

Sementara variabel dalam SQL kurang umum (tetapi masih digunakan), penggabungan masih diperlukan untuk mengembalikan hasil gabungan, atau untuk memanipulasi data.





Bagaimana Menggabungkan

Penggabungan adalah sangat mudah dalam SQL. Sementara SQL adalah bahasa yang umum, mesin database individu mengimplementasikan fitur dengan cara yang berbeda. Meskipun semua contoh ini ada dalam dialek PostgreSQL, mudah untuk menerjemahkan ke varian lain hanya dengan menelusuri web untuk 'Concatenate .' Mesin yang berbeda mungkin memiliki sintaks yang berbeda untuk penggabungan, tetapi prinsipnya tetap sama.

Kembali ke contoh nama kami, inilah dasarnya Pilih pertanyaan:





SELECT first_name, last_name, email FROM users_table

Tidak ada yang rumit di sini, jadi mari tambahkan gabungan:

SELECT first_name || last_name AS full_name, email FROM users_table

Seperti yang Anda lihat, rangkaian ini telah bekerja dengan sempurna, tetapi ada satu masalah kecil. Nama lengkap yang dihasilkan telah dijahit bersama persis seperti produk dari kedua kolom -- harus ada spasi di antara nama!

Untungnya, mudah untuk memperbaikinya: cukup gabungkan spasi di antara keduanya:

SELECT first_name || ' ' || last_name AS full_name, email FROM users_table

Ini adalah contoh dasar, tetapi Anda harus melihat bagaimana penggabungan bekerja -- sangat mudah! Operator pipa ( | ) digunakan dua kali di antara klausa. Mesin SQL Anda tahu bahwa setiap bagian sebelum dan sesudah simbol ini harus digabungkan dan diperlakukan sebagai satu. Hati-hati, jika Anda menggunakan operator concat tetapi tidak menggabungkan apa pun, Anda akan mendapatkan kesalahan.

Seperti disebutkan di atas, contoh-contoh ini menggunakan varian PostgreSQL dari SQL. Varian lain mungkin menggunakan operator yang berbeda, atau bahkan fungsi khusus yang harus Anda panggil. Itu tidak terlalu penting bagaimana Anda menggabungkan string, asalkan Anda melakukannya dengan cara yang diharapkan oleh mesin database Anda.

Pergi Lebih Dalam

Sekarang setelah Anda mengetahui dasar-dasarnya, mari kita lihat beberapa contoh mendalam, bersama dengan beberapa perangkap umum.

Sebagian besar mesin basis data akan berhasil menggabungkan campuran string dan bilangan bulat, bahkan mungkin tanggal juga. Anda biasanya akan mengalami masalah saat mencoba menggabungkan tipe kompleks seperti array:

SELECT first_name || ' ' || last_name || ARRAY[123, 456] AS full_name, email FROM users_table

Kode ini tidak akan berfungsi. Tidak mungkin menggabungkan string dengan objek kompleks seperti array. Jika Anda memikirkan apa yang perlu Anda lakukan, Anda sering dapat menulis kode sederhana yang berfungsi, daripada kode rumit dan gila yang gagal dijalankan.

Jika Anda telah memikirkan dengan hati-hati tentang apa yang perlu Anda lakukan, dan masih tidak dapat menjalankan SQL, apakah Anda sudah mempertimbangkan untuk menggunakan bahasa pemrograman? Sebagai pengembang perangkat lunak yang mengerjakan kode lawas, saya tahu rasa sakit mencoba men-debug SQL yang seseorang telah menjejalkan begitu banyak logika ke dalamnya sehingga mengherankan jika kode itu berjalan sama sekali -- jika Anda mencoba menulis logika dalam SQL, maka beralihlah ke bahasa pemrograman (ada banyak bahasa yang mudah dipelajari).

Penggabungan bekerja sangat baik untuk di mana pernyataan juga:

SELECT first_name, last_name, email FROM users_table WHERE date_of_birth = ('DAY' || '/' || 'MONTH' || '/' || 'YEAR')::date

Ada beberapa hal yang terjadi di sini. Dalam contoh ini, HARI , BULAN , dan TAHUN adalah parameter yang telah diteruskan dari skrip. Mungkin ini telah dihasilkan oleh kode, atau dimasukkan oleh pengguna. Ini digabungkan bersama, dan kemudian dilemparkan ke tipe tanggal (menggunakan sintaks PostgreSQL cast to date ::tanggal ).

Menggunakan penggabungan dengan cara ini memungkinkan Anda untuk menyatukan bagian-bagian individual dari tanggal, yang kemudian dapat diproses sebagai tanggal 'nyata', sebagai lawan dari string. Jangan lupa bahwa contoh dasar ini tidak melindungi dari injeksi SQL , jadi jangan menggunakannya dalam kode produksi apa pun tanpa memodifikasi.

Jebakan lain yang harus diwaspadai adalah batal nilai (string nol adalah string kosong atau tidak ada). Mengingat kueri ini:

SELECT first_name || ' ' || NULL AS full_name, email FROM users_table

Permintaan ini diam-diam gagal. Ini karena cara penggabungan dikodekan secara internal pada mesin basis data Anda. Anda mungkin tidak selalu mengalami masalah ini, tetapi ini cukup umum terjadi.

Jika menurut Anda data yang dikembalikan kueri Anda mungkin nol, maka Anda harus menggunakan a bersatu . Penggabungan secara kasar dapat dianggap sebagai 'jika ini nol, ganti dengan string atau kolom lain ini':

SELECT first_name || ' ' || COALESCE(NULL, 'ERROR NULL DATA') AS full_name, email FROM users_table

Sekarang Anda tahu cara menggunakan penggabungan dalam SQL, apa yang akan Anda lakukan dengannya? Maukah kamu membuat situs web dan menghidupkannya dengan SQL? Atau mungkin Anda memerlukan generator situs statis untuk pendekatan yang lebih sederhana dalam membangun situs web.

Apa pun yang Anda lakukan, beri tahu kami di komentar di bawah!

apa yang harus dilakukan jika facebook diretas
Membagikan Membagikan Menciak Surel 6 Alternatif Audible: Aplikasi Audiobook Gratis atau Murah Terbaik

Jika Anda tidak suka membayar untuk buku audio, berikut adalah beberapa aplikasi hebat yang memungkinkan Anda mendengarkannya secara gratis dan legal.

Baca Selanjutnya
Topik-topik yang berkaitan
  • Pemrograman
  • Pemrograman
  • SQL
Tentang Penulis Joe Coburn(136 Artikel Diterbitkan)

Joe adalah lulusan Ilmu Komputer dari University of Lincoln, Inggris. Dia adalah pengembang perangkat lunak profesional, dan ketika dia tidak menerbangkan drone atau menulis musik, dia sering terlihat sedang mengambil foto atau membuat video.

More From Joe Coburn

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan