2017-02-17 14 views
1

「と」私のSQL文構文エラーIは、以下のステートメントを実行しようとしている、と私は以下</p> <blockquote> <p>ERROR: syntax error at or near "AS"</p> </blockquote> <p>を示すエラーを取得しています

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という名前のテーブルから選択され

+1

括弧は必要ありませんし、おそらくあなたの構文の問題を引き起こしているもの。 – jmelesky

+0

** **の前に** **の内容がありますか? – Abelisto

答えて

2

のでpatient.patientidpatientへの参照がpatient.nameため、無効と同じである(エラーがasを参照し、なぜ私にはわからないが、それはむしろ「FROM句行方不明する必要がありますテーブル "患者"のエントリ

また、文字列定数は二重引用符ではなく、一重引用符で囲む必要があります。そして選択の周りのかっこは役に立たない。

次は動作するはずです:

CREATE TEMPORARY TABLE IF NOT EXISTS temp_users 
AS 
SELECT p.patientid as patient 
FROM patients p 
WHERE p.name = 'Ann'; 

オンライン例:それは働いている私はpostgresでhttp://rextester.com/PVMT64289

0

を。エラーは見つかりませんでした。

CREATE TEMPORARY TABLE IF NOT EXISTS temp_users 
AS (SELECT test.id as patient FROM test WHERE test.name = 'Ann'); 
関連する問題