开发者

WITH statement not working in Postgresql

I have the following SQL Query which I run in PgAdmin:

WITH TABLE1 AS
( SELECT int1, int2, int3 FROM atbl
)
SELECT int1, <complex computation involving a large number of values of int2 and int3 from TABLE1>
FROM TABLE1

The result of running it is an error message:

ERROR:  syntax error at or near "WITH"
LINE 1: WITH TABLE1 AS

Why does this happen? The with statement should be available for PostgreSQL:

http://www.postgresql.org/docs/8.4/static/queries-with.html

It is understood that this version is lower than 8.4. Is there an alternative to using WITH to ach开发者_运维百科ive the same results?


I found this and this helpful. and make sure your using a version >= 8.4 as that's when this was introduced. Not having a ; shouldn't be an issue.

Your syntax looks correct though... this definitely works.

WITH table1 AS (
SELECT * FROM atbl
)
select * from table1

So I'd check the version you are running. as that give the error your are experiencing.


You can replace it with the following:

SELECT int1, 
       (complex computation involving a large number of values of int2 and int3 from TABLE1)
FROM ( 
   SELECT int1, int2, int3 
   FROM atbl
) table1


What's wrong with simple SQL?

SELECT 
  int1, 
  <complex computation involving a large number of values of int2 and int3 from atbl>
FROM 
  atbl;
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜