项目使用的PGsql数据库,现在遇到的问题是保存数据,如果存在就更新,如果不存在就插入,那么如何写sql呢?
有一张表有自己的主键id,同时有一个组合唯一索引,字段分别是:item_type,item_type_id,item_group,item_group_key
废话不多说,实现的sql如下:

<insert id="insertResourceConfig" parameterType="com.lenovo.mcmp.rm.etl.model.param.resourceConfig.CreateResourceConfigParam">
        INSERT INTO resource_config (item_type,item_type_id,item_group,item_group_key,item_group_value,create_at,create_by)
        values ( #{param.itemType},#{param.itemTypeId},#{param.itemGroup},#{param.itemGroupKey},#{param.itemGroupValue},#{param.createAt}, #{param.createBy})
        on conflict(item_type,item_type_id,item_group,item_group_key) do update set
        item_group_value = #{param.itemGroupValue}
    </insert>
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐