我想在一个带有python脚本的postgres数据库中插入一些值, 但是当我用下面的代码尝试它时,我的第一个IF会出现语法错误。
sql_string = "BEGIN IF (NOT EXISTS(SELECT * FROM table WHERE nm=name))
BEGIN INSERT INTO table(nm, nb)
VALUES (%s, %s) END END"
cur.execute(sql_string, (name, number))
如果有人有想法会很好。 谢谢:))
答案 0 :(得分:1)
这种方法与数据库无关。
insert into yourtable
(field1, field2, etc)
select distinct value1, value2, etc
from some_small_table
where not exists
(subquery to check for existing records)