2011-02-18 24 views
5
DELETE FROM programSchedule 
LEFT JOIN program ON programSchedule.pid = program.id 
WHERE program.channel_id = 10 

JOIN:Hata Sorgusu: SİL ve SOL bu hatayı alıyorum

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'LEFT JOIN program ON programSchedule.pid = program.id' at line 1

Neden?

cevap

8

Silmek için hangi tabloyu belirtmeniz gerekir.

DELETE programSchedule.* 
FROM programSchedule LEFT JOIN program ON programSchedule.pid = program.id 
WHERE program.channel_id = 10 

Not: iki tablo söz konusu program.channel_id

DELETE programSchedule.* 
FROM programSchedule INNER JOIN program ON programSchedule.pid = program.id 
WHERE program.channel_id = 10 
+0

Not: programSchedule tablodaki satırları silmek için Yani, bunu yapabilirsiniz Eğer ** hem ** tablolardan silmek istiyorsanız, önce geçici bir tablo oluşturarak yapabilirsiniz. Lütfen tablo tanımlarınızı yazınız. –

2

Çünkü göre filtreleme yapıyorsunuz beri INNER JOIN katılmak değiştirme, size silmek istediğiniz tablo söylemek gerekir.

DELETE programSchedule.* 
FROM programSchedule 
LEFT JOIN program ON programSchedule.pid = program.id 
WHERE program.channel_id = 10 
İlgili konular