Soalan:
Bagaimana saya hendak memadamkan baris daripada jadual MySQL berdasarkan keputusan pernyataan pilihan?
Kod (MySQL 5.0):
DELETE FROM posts where>
Masalah:
Kod di atas tidak berfungsi dalam MySQL 5.0 dan anda ingin mencari penyelesaian yang berfungsi. Matlamat anda adalah untuk memadamkan baris yang tidak mempunyai ID unik.
Jawapan:
Menggunakan IN:
Dalam MySQL , subqueries mengembalikan set hasil. Untuk menggunakan hasil subkueri dalam pernyataan DELETE, anda harus menggunakan operator IN dan bukannya tanda sama dengan (=) dalam klausa WHERE anda.
Kod Diubah Suai:
DELETE FROM posts WHERE id IN ( SELECT id FROM posts GROUP BY id HAVING ( COUNT(id) > 1 ) )
Pertimbangan Tambahan:
DELETE FROM posts p1 WHERE p1.id = ( SELECT p2.id FROM posts p2 WHERE p2.id = p1.id GROUP BY p2.id HAVING COUNT(p2.id) > 1 )
Atas ialah kandungan terperinci Bagaimana untuk Memadam Baris daripada Jadual MySQL Berdasarkan Keputusan Pernyataan Pilih?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!