我正在尝试执行下面的语句,但我收到一条错误消息
ERROR: syntax error at or near "AS"
下面是我的SQL语句
CREATE TEMPORARY TABLE IF NOT EXISTS temp_users
AS
(SELECT patient.patientid as patient
FROM patients
WHERE patient.name = "Ann");
我的 Postgres 版本是 9.5.6。我尝试了很多方法但都失败了。有谁知道这个的修复方法?
最佳答案
您正在从名为 patients
的表中进行选择,因此 patient.patientid
中对 patient
的引用无效,对于 也是如此patient.name
(虽然我不知道为什么错误引用了 as
,但它应该是“missing FROM-clause entry for table "patient" ")
另外:字符串常量需要放在单引号中,而不是双引号。并且 select 周围的括号没有用。
以下应该有效:
CREATE TEMPORARY TABLE IF NOT EXISTS temp_users
AS
SELECT p.patientid as patient
FROM patients p
WHERE p.name = 'Ann';
关于sql - "AS"附近的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42289535/