正在尝试在查询中写入insert和update。因此,我的方案是-如果存在一行,则向上插入并插入新行。但行不存在,只能插入。
所以我想说的是-
Select exist(Select 1 from table where condition)
if(exists){
Update table set column =value where condition.
Insert into table (column) values (" ").
}else{
Insert into table (column) values (" ")
}
由于我在这里写了这么多的查询,有没有可能我可以涵盖所有这些在一个查询。
提前谢谢
1条答案
按热度按时间dphi5xsq1#
只需插入查询并检查
CONFLICT
条款。postgresql支持conflict子句,该子句在某个特定事件发生冲突时触发
CONSTRAINT
.假设你有一张table
t
带主键列id
以及name
字段:插入时,可以检查主键约束: