sql PostgreSQL“Upsert”语句的一个示例:意思是,如果UPDATE失败,则INSERT数据。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql PostgreSQL“Upsert”语句的一个示例:意思是,如果UPDATE失败,则INSERT数据。相关的知识,希望对你有一定的参考价值。

-- Postgres "UPSERT" statement.
WITH upd AS (
    UPDATE my_table 
    SET os='iOS', os_version='10.3' 
    WHERE account='default' 
    RETURNING *
)
INSERT INTO my_table (
    account, os, os_version
)
SELECT 'default', 'iOS', '10.3'
WHERE NOT EXISTS (
    SELECT * FROM upd
);

以上是关于sql PostgreSQL“Upsert”语句的一个示例:意思是,如果UPDATE失败,则INSERT数据。的主要内容,如果未能解决你的问题,请参考以下文章

使用 jOOQ 在 PostgreSQL 中进行 UPSERT

将 Oracle upsert 转换为 PostgreSQL 准备好的语句

sql PostgreSQLのUPSERT(复合ユニーク制约を含む)

SQLAlchemy - 在 postgresql 中执行批量 upsert(如果存在,更新,否则插入)

如何在 flask_sqlalchemy 中使用 PostgreSQL 的“INSERT...ON CONFLICT”(UPSERT)功能?

PostgreSQL Upsert 使用系统列 XMIN、XMAX 等来区分插入和更新的行