heinetz: MySQL DELETE

Beitrag lesen

Hallo Forum,

ich krieg's gerade nicht hin. Folgendes SQL-Statement funktioniert einwandfrei, um Datensätze in der Tabelle jstree\_structure zu löschen:

  
DELETE  
s1 . * ,  
c . *  
FROM `jstree_structure` s1  
LEFT JOIN `content_offline` c ON s1.site_id = c.site_id  
LEFT JOIN `jstree_structure` s2 ON s1.parent_id = s2.site_id  
WHERE (  
 s2.site_id IS NULL  
 AND s1.parent_id  
 IS NOT NULL  
)  
OR s1.parent_id =2600

Mein Versuch, gleichzeitig in der Tabelle Datensätze in der Tabelle
content\_offline zu löschen, scheitert, wenn ich es auf folgende Weise versuche:

  
DELETE  
s1 . * ,  
c . *  
FROM  
`jstree_structure` s1,  
c  
LEFT JOIN `content_offline` c ON s1.site_id = c.site_id  
LEFT JOIN `jstree_structure` s2 ON s1.parent_id = s2.site_id  
WHERE (  
 s2.site_id IS NULL  
 AND s1.parent_id  
 IS NOT NULL  
)  
OR s1.parent_id =2600

MySQL meldet:
#1066 - Not unique table/alias: 'c'

Ich habe einiges versucht:

  
DELETE  
s1,  
c  
FROM  
`jstree_structure` s1,  
c  
LEFT JOIN `content_offline` c ON s1.site_id = c.site_id  
LEFT JOIN `jstree_structure` s2 ON s1.parent_id = s2.site_id  
WHERE (  
 s2.site_id IS NULL  
 AND s1.parent_id  
 IS NOT NULL  
)  
OR s1.parent_id =2600
  
DELETE  
FROM  
`jstree_structure` s1,  
c  
LEFT JOIN `content_offline` c ON s1.site_id = c.site_id  
LEFT JOIN `jstree_structure` s2 ON s1.parent_id = s2.site_id  
WHERE (  
 s2.site_id IS NULL  
 AND s1.parent_id  
 IS NOT NULL  
)  
OR s1.parent_id =2600

... aber das haut leider auch nicht hin ;(

Warum ist hier 'c' not unique. Habe ich irgendetwas übersehen?

danke für Tipps und

beste gruesse,
heinetz