Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Membandingkan Tuple dengan Cekap dalam Klausa `IN` SQL?

Bagaimanakah Saya Boleh Membandingkan Tuple dengan Cekap dalam Klausa `IN` SQL?

Linda Hamilton
Lepaskan: 2025-01-03 00:37:38
asal
832 orang telah melayarinya

How Can I Efficiently Compare Tuples in SQL's `IN` Clause?

Menggunakan Tuple dalam Klausa "IN" SQL

Apabila bekerja dengan klausa WHERE yang kompleks, selalunya perlu membandingkan medan atau set medan dengan senarai nilai. Dalam kes membandingkan tupel, terdapat beberapa pilihan yang tersedia.

Klausa IN dengan Nilai Kod Keras

Satu pendekatan ialah menggunakan nilai berkod keras dalam klausa IN. Walau bagaimanapun, ini boleh menjadi tidak cekap untuk jadual besar, kerana setiap rekod memerlukan penggabungan rentetan dan penukaran.

Menggunakan Klausa VALUE (SQL Standard)

Pilihan yang lebih cekap untuk Standard Pangkalan data SQL-92 adalah menggunakan klausa VALUES dalam operator IN. Ini melibatkan melampirkan senarai tuple dalam kurungan dan menambah kata kunci VALUES.

SELECT *
FROM mytable
WHERE (group_id, group_type) IN (
                                VALUES ('1234-567', 2), 
                                       ('4321-765', 3), 
                                       ('1111-222', 5)
                               );
Salin selepas log masuk

Keserasian Pangkalan Data

Adalah penting untuk ambil perhatian bahawa sintaks ini tidak disokong oleh semua SQL produk. Mulai SQL Server 2022, ciri ini dianggap tidak dirancang. Walau bagaimanapun, PostgreSQL dan SQLite menyokong sintaks ini.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membandingkan Tuple dengan Cekap dalam Klausa `IN` SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan