Dalam pengurusan pangkalan data menggunakan SQL, terdapat pelbagai fungsi yang memudahkan kita memanipulasi dan menarik data secara cekap. Dua daripadanya yang sering diandalkan oleh pembangun dan penganalisis data ialah klausa UNION dan operator IN. Berikut adalah panduan lengkap mengenai fungsi, syarat penggunaan, dan cara penulisan sintaksnya.

Klausa UNION

Klausa UNION merupakan satu klausa dalam SQL yang digunakan untuk menggabungkan dua atau lebih hasil daripada pernyataan SELECT.

Untuk menggunakan klausa ini, anda tidak boleh sewenang-wenangnya menggabungkan jadual. Terdapat peraturan tetap yang mesti dipenuhi agar pertanyaan tidak menghasilkan ralat:

  • Setiap pernyataan SELECT yang digabungkan mesti mempunyai bilangan lajur yang sama.
  • Jenis data yang dimiliki oleh lajur-lajur yang bersesuaian mestilah sama atau serasi.
  • Setiap lajur dalam pernyataan SELECT mestilah dalam susunan yang sama.

Secara lalai, klausa UNION hanya akan memilih dan memaparkan nilai yang berbeza. Ini bermakna sistem akan menapis hasil secara automatik supaya tiada pertindihan data berlaku.

Sintaks UNION:

SQL

SELECT column_name(s) FROM table1

UNION

SELECT column_name(s) FROM table2;

Klausa UNION ALL

Dalam keluarga UNION, terdapat juga variasi sintaks yang dikenali sebagai UNION ALL.

Perbezaan utama antara kedua-duanya terletak pada cara sistem mengendalikan data yang berulang. Jika UNION menghapuskan pertindihan, UNION ALL membenarkan berlakunya pertindihan data. Klausa ini akan memaparkan semua baris hasil daripada setiap pernyataan SELECT yang digabungkan, tanpa mengira sama ada terdapat nilai yang sama persis atau tidak.

Sintaks UNION ALL:

SQL

SELECT column_name(s) FROM table1

UNION ALL

SELECT column_name(s) FROM table2;

Nota: Penggunaan UNION ALL biasanya lebih pantas berbanding UNION biasa kerana sistem pengkomputeran tidak perlu membuang masa tambahan untuk mengimbas dan memadam baris yang berulang.

Operator IN

Operator IN merupakan operator logik yang ditambahkan pada klausa WHERE untuk menapis data berdasarkan beberapa kemungkinan nilai sekaligus.

Operator ini sering dikatakan sebagai kaedah ringkasan untuk menggantikan penggunaan operator OR yang berulang kali semasa membuat pemilihan pada beberapa syarat. Penggunaan IN menjadikan kod SQL jauh lebih kemas, ringkas, dan mudah dibaca.

Sintaks Operator IN (menggunakan senarai nilai spesifik):

SQL

SELECT column_name(s) FROM table_name

WHERE column_name IN (value1, value2, …);

Sintaks Operator IN (menggunakan Subquery / pernyataan SELECT):
Selain mendefinisikan nilai secara manual, anda juga boleh meletakkan pernyataan SELECT lain di dalam tanda kurung untuk menghasilkan senarai nilai secara dinamik.

SQL

SELECT column_name(s) FROM table_name

WHERE column_name IN (SELECT STATEMENT);

Shares:
Tinggalkan Balasan

Alamat e-mel anda tidak akan disiarkan. Medan diperlukan ditanda dengan *