Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengatasi Sekatan LIMIT Subquery MySQL dengan Operator IN?
Ketidakserasian MySQL dengan Had Subkueri
Mesej ralat "Versi MySQL ini belum lagi menyokong 'LIMIT & IN/ALL/ANY /SOME subquery'" menunjukkan bahawa versi MySQL yang digunakan tidak menyokong penggunaan klausa LIMIT dalam subquery apabila menggunakan operator tertentu seperti IN.
Penyelesaian
Satu penyelesaian untuk pengehadan ini ialah menggunakan JOIN dan bukannya subkueri IN. Kod berikut menunjukkan pendekatan ini:
$Last_Video = $db->fetch_all(' SELECT v.VID, v.thumb FROM video AS v INNER JOIN (SELECT VID FROM video WHERE title LIKE "%' . $Channel['name'] . '%" ORDER BY viewtime DESC LIMIT 5) AS v2 ON v.VID = v2.VID ORDER BY RAND() LIMIT 1 ');
Dalam kod ini:
Atas ialah kandungan terperinci Bagaimana untuk Mengatasi Sekatan LIMIT Subquery MySQL dengan Operator IN?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!