在PostgreSQL中,WHERE NOT EXISTS出现语法错误[英] WHERE NOT EXISTS in PostgreSQL gives syntax error

本文是小编为大家收集整理的关于在PostgreSQL中,WHERE NOT EXISTS出现语法错误的处理方法,想解了在PostgreSQL中,WHERE NOT EXISTS出现语法错误的问题怎么解决?在PostgreSQL中,WHERE NOT EXISTS出现语法错误问题的解决办法?那么可以参考本文帮助大家快速定位并解决问题。

问题描述

当尝试使用 WHERE NOT EXISTS 子句来防止在列 age 中添加具有重复值的行时,我收到错误 syntax error at or near "WHERE".

为什么会抛出语法错误?我正在使用 Postgresql 9.1.

SQL

INSERT INTO live.users ("website", "age") 
values ('abc', '123')
WHERE NOT EXISTS (SELECT age FROM live.users WHERE age = 123);

错误

ERROR:  syntax error at or near "WHERE"
LINE 6: WHERE NOT EXISTS (SELECT age FROM live.users W...

推荐答案

改为:

INSERT INTO live.users ("website", "age") 
SELECT 'abc', 123
WHERE NOT EXISTS (SELECT age FROM live.users WHERE age = 123);

本文地址:https://www.itbaoku.cn/post/1763828.html