Re: ORDER BY col is NULL in UNION causes error?
От | Bruce Momjian |
---|---|
Тема | Re: ORDER BY col is NULL in UNION causes error? |
Дата | |
Msg-id | 200701121934.l0CJYQ327928@momjian.us обсуждение исходный текст |
Ответ на | Re: ORDER BY col is NULL in UNION causes error? (Alvaro Herrera <alvherre@commandprompt.com>) |
Список | pgsql-general |
Alvaro Herrera wrote: > Bruce Momjian wrote: > > > Here the column result is an expression, and you reference that. > > Updated wording: > > > > test=> select * from test union select * from test order by x is null; > > ERROR: A UNION/INTERSECT/EXCEPT ORDER BY cannot use expressions or functions, only result column names > > This seems at odds with our message style guidelines. I'd suggest > putting the actual error message in errmsg() and the rest as a errhint, > maybe > > (errmsg("invalid UNION/INTERSECT/EXCEPT ORDER BY clause"), > errhint("You may specify only output result column names in the ORDER BY clauses.")) > > or something like that. Updated wording: test=> SELECT * FROM test UNION SELECT * FROM test ORDER BY X IS NULL; ERROR: invalid UNION/INTERSECT/EXCEPT ORDER BY clause DETAIL: Only result column names can be used, not expressions or functions. HINT: Add the expression/function to every SELECT, or move the UNION into a FROM clause. -- Bruce Momjian bruce@momjian.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. +
В списке pgsql-general по дате отправления: