我试图执行下面的语句,但是出现了错误:
ERROR: 语法错误,附近有“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。我尝试了很多方法,但都失败了。有人知道如何解决吗?
我试图执行下面的语句,但是出现了错误:
ERROR: 语法错误,附近有“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
,它应该是“表格”patient”缺失FROM子句条目")。
此外:字符串常量需要放在单引号中,而不是双引号。而且在选择周围的括号是没用的。
以下内容应该可以工作:
CREATE TEMPORARY TABLE IF NOT EXISTS temp_users
AS
SELECT p.patientid as patient
FROM patients p
WHERE p.name = 'Ann';
在我的PostgreSQL中,它是正常工作的,并未发现任何错误。
CREATE TEMPORARY TABLE IF NOT EXISTS temp_users
AS (SELECT test.id as patient FROM test WHERE test.name = 'Ann');