sql >> データベース >  >> RDS >> PostgreSQL

Postgresで左外部結合を使用して削除する

    他の人が指摘しているように、DELETEステートメントで直接LEFTJOINを行うことはできません。ただし、USINGステートメントを使用してターゲットテーブルの主キーで自己結合してから、その自己結合テーブルに対して左結合することはできます。

    DELETE FROM tv_episodes
    USING tv_episodes AS ed
    LEFT OUTER JOIN data AS nd ON
       ed.file_name = nd.file_name AND 
       ed.path = nd.path
    WHERE
       tv_episodes.id = ed.id AND
       ed.cd_name = 'MediaLibraryDrive' AND nd.cd_name IS NULL;
    

    WHERE句のtv_episodes.idの自己結合に注意してください。これにより、上記のサブクエリルートが回避されます。



    1. android JDBC mysql javaコネクタapp:preDexDebug

    2. グループ化された集約プッシュダウン

    3. テーブルの列からデータを挿入し、別のテーブルの列に格納します

    4. SQLコマンドを使用してPostgresのmax_connectionsを変更する方法