0

結果を生成するクエリがあります。

SELECT urenID FROM uren WHERE uren.urenDossierID IN (SELECT dossierID FROM dossier WHERE dossierKlantID NOT IN (SELECT klantID from klant))

今、そのクエリを生成するすべてのレコードを削除したいと思います。これが私の質問です。どうやってするか?

4

3 に答える 3

2

SELECT urenIDで置き換えるだけDELETE

DELETE FROM uren WHERE uren.urenDossierID IN (SELECT dossierID FROM dossier WHERE dossierKlantID NOT IN (SELECT klantID from klant))
于 2013-02-02T13:47:08.090 に答える
1

JOINはより速いことを強く信じていますIN

DELETE  a
FROM    uren a
        LEFT JOIN dossier b
            ON a.urenDossierID = b.dossierID
        LEFT JOIN klant c
            ON b.dossierKlantID = c.klantID
WHERE   b.dossierID IS NOT NULL AND
        c.klantID IS NULL
于 2013-02-02T13:53:59.240 に答える
1

これを試して。

DELETE FROM uren WHERE urenID in (
   SELECT urenID FROM uren WHERE uren.urenDossierID IN (SELECT dossierID FROM dossier WHERE dossierKlantID NOT IN (SELECT klantID from klant)))
于 2013-02-02T13:47:06.967 に答える