我正在尝试执行以下声明,并且我收到错误说明
错误:语法错误在" 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。我尝试了很多方法但失败了。有谁知道修复此问题?
答案 0 :(得分:3)
您正在从名为patients
的表中进行选择,因此patient
中对patient.patientid
的引用无效,patient.name
的引用相同(尽管我不知道为什么错误引用as
,它应该是“缺少FROM-clause条目表”病人“”)
另外:字符串常量需要放在单引号中,而不是双引号。选择周围的括号是无用的。
以下内容应该有效:
CREATE TEMPORARY TABLE IF NOT EXISTS temp_users
AS
SELECT p.patientid as patient
FROM patients p
WHERE p.name = 'Ann';
答案 1 :(得分:0)
在我的帖子里,它正在发挥作用。没有发现错误。
CREATE TEMPORARY TABLE IF NOT EXISTS temp_users
AS (SELECT test.id as patient FROM test WHERE test.name = 'Ann');