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

Postgresql、一意の値を持つ行が存在する場合は更新し、存在しない場合は挿入します

    これは何度も尋ねられてきました。考えられる解決策はここにあります: https://stackoverflow.com/a/6527838/552671

    このソリューションには、UPDATEの両方が必要です およびINSERT

    UPDATE table SET field='C', field2='Z' WHERE id=3;
    INSERT INTO table (id, field, field2)
           SELECT 3, 'C', 'Z'
           WHERE NOT EXISTS (SELECT 1 FROM table WHERE id=3);
    

    Postgres 9.1では、1つのクエリでそれを行うことができます: https://stackoverflow.com/a/ 1109198/2873507



    1. 日本語(utf8)のHTML2PDFサポートが機能していません

    2. Doctrineクエリビルダーで複数のWHEREIN列クエリを作成するにはどうすればよいですか?

    3. PHP/MySQLの単純な再帰ツリー

    4. pg-promise:トランザクション内の次のクエリで1つのクエリの結果を使用する