sql >> Databasteknik >  >> RDS >> Mysql

Ta bort en SQL-frågeresultatuppsättning

Det är sant att du inte kan använda samma tabell som du vill ta bort rader från i ett direkt underval, men med ett litet trick - ett underval på ett underval som härlett tabell - kan du göra det:

DELETE FROM votes
WHERE id IN (
    SELECT 
        t.id
    FROM ( 
        SELECT v.id, COUNT(c.comment) cnt
        FROM votes v
        LEFT JOIN comments c ON f.id = v.post_id
        GROUP BY v.id
        HAVING COUNT(c.comment) = 0 
    ) t
);

Jag antar att raderna utan kommentarer ska tas bort.



  1. Automatisera distributionen av ditt MySQL- eller Postgres-kluster från säkerhetskopia

  2. System.Data.SqlClient Namespace för MySQL?

  3. Bästa sättet att jämföra VARCHAR2 med CHAR

  4. Kombination av fältsökning med PHP &MYSQL