问题描述
我正在使用postgres db,我试图在SQL下面执行以插入不存在的表中
我想先将数据插入表中,然后再检查是否存在,否则不要插入。
我希望简化查询,因为我将在带有pycopg2库的python代码中使用它
INSERT INTO T1 (a1,a2,a3,a4)
VALUES (123,'20e16411-b8f7',4,(SELECT u1 from T2 where u2 = '[email protected]'))
WHERE NOT EXISTS (SELECT a3
FROM TI
WHERE a1 =123
AND a2 = '20e16411-b8f7'
AND a3 = 4
AND a4 = (SELECT u1 from T2 where u2 = '[email protected]'))
SQL Error [42601]: ERROR: syntax error at or near "WHERE" Position: 236
我在哪里语法上遇到了问题,但是,如果不能很好地纠正我的查询,我不确定这是否是实现我的逻辑的正确查询
If not exist (select * from t1 where <check>)
Begin
Insert
End
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)