Reputation: 783
I need to check if a row exists or not. If it does not exist, it should be inserted.
This is in postgres
and I am trying to insert row through a shell script. When I run the script it does not show error but it does not insert into table even though no matching row is present.
Upvotes: 10
Views: 44011
Reputation: 4380
I like the solution they mention here
INSERT INTO table (id, field, field2)
SELECT 3, 'C', 'Z'
WHERE NOT EXISTS (SELECT 1 FROM table WHERE id=3);
Upvotes: 28