SORU
30 Aralık 2009, ÇARŞAMBA


NEREDE bir tablo BİRLEŞTİRME ile SQL koşulu SİL

guide tablo (ölü ilişkiler) ile hiçbir ilişkisi var guide_category satır silmek için var.

Yapmak istiyorum, ama ders çalışmıyor.

DELETE FROM guide_category AS pgc 
 WHERE pgc.id_guide_category IN (SELECT id_guide_category 
                                   FROM guide_category AS gc
                              LEFT JOIN guide AS g ON g.id_guide = gc.id_guide
                                  WHERE g.title IS NULL)

Hata:

Hedef tablo 'guide_category' tümcesi . GELEN güncelleştirme için belirtebilirsiniz

CEVAP
30 Aralık 2009, ÇARŞAMBA


Kilitleme uygulama sorunları, MySQL nedeniyle DELETE UPDATE etkilenen tabloya başvuran izin vermiyor.

JOIN burada yerine yapmanız gerekir:

DELETE  gc.*
FROM    guide_category AS gc 
LEFT JOIN
        guide AS g 
ON      g.id_guide = gc.id_guide
WHERE   g.title IS NULL

ya da sadece NOT IN kullanın:

DELETE  
FROM    guide_category AS gc 
WHERE   id_guide NOT IN
        (
        SELECT  id_guide
        FROM    guide
        )

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • LIVESTRONG.COM

    LIVESTRONG.C

    5 EKİM 2005
  • Submissions101

    Submissions1

    23 ŞUBAT 2007
  • Tek Syndicate

    Tek Syndicat

    23 Temmuz 2008