Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mencari Teg Berbilang Padanan Kandungan dengan Cekap dalam SQL?
Pertanyaan SQL: Persimpangan Cekap untuk Berbilang Teg
Apabila bekerja dengan jadual teg yang diberikan kepada kandungan, perkara biasa perlu mengenal pasti kandungan yang sepadan dengan gabungan teg tertentu. Pendekatan naif menggunakan subkueri bersarang dengan cepat boleh menjadi sukar digunakan untuk berbilang teg.
Untuk mencapai persimpangan ini dengan cekap, kami boleh memanfaatkan pertanyaan SQL berikut:
SELECT contentID FROM tags WHERE tagID in (334, 338, 342) GROUP BY contentID HAVING COUNT(DISTINCT tagID) = 3;
Penjelasan:
Dengan menggantikan ID teg tertentu dengan senarai berparameter dan melaraskan kiraan dalam klausa HAVING, pertanyaan ini menjadi umum untuk sebarang bilangan teg:
SELECT contentID FROM tags WHERE tagID in (...) --taglist GROUP BY contentID HAVING COUNT(DISTINCT tagID) = ... --tagcount;
Pendekatan yang dioptimumkan ini menyediakan penyelesaian yang mantap untuk mencari persilangan berbilang teg dalam jadual dengan cekap.
Atas ialah kandungan terperinci Bagaimana untuk Mencari Teg Berbilang Padanan Kandungan dengan Cekap dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!