Zitat von
glkgereon:
hi
ich hab en
db in dieser form: id, ParentID, Value
daraus erstelle ich so "Bäume"
nun möchte ich alle einträge löschen, wo es die Zahl, die in ParentID drinsteht nicht mehr in der id spalte gibt.
geht das so?
DELETE FROM all WHERE (SELECT Count(ID) FROM all WHERE ID = ParentID) = 0
und nochwas:
wenn ich zb 5 gleiche (vom design her) tabellen hab, wie kann ich die zusammenführen?
so?
INSERT INTO all VALUES (SELECT * FROM tbl1, tbl2, tbl3, tbl4)
mfg gereon
zu 1.: nein. Welche ParentID meinst Du denn? Doch sicher eine bestimmte, oder? Vielleicht meinst du das:
DELETE FROM all WHERE ID = :ParentID
Aber wie gesagt: Ich bin nicht sicher was Du meinst. :ParentID ist hier ein Parameter, den du noch setzen musst. Allerdings würdest du auf diese Weise nur einen Datensatz löschen, nämlich den Parent des Datensatze, von dem die ParentID stammt. Willst Du das?
zu 2.
je nach datenbank - in
Access geht das mit UNION:
SELECT * FROM tbl1 UNION SELECT * FROM tbl2 UNION SELECT * FROM tbl3 ...