[ 
https://issues.apache.org/jira/browse/PHOENIX-1749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14385083#comment-14385083
 ] 

Julian Hyde edited comment on PHOENIX-1749 at 3/28/15 3:10 AM:
---------------------------------------------------------------

Ordinal positions have to be constants. Not bind variables, or expressions. I 
think even +1 should not qualify.

However I think you should consider allowing "\*" (say "select \* from emp 
order by 2"). It might be different in Phoenix, but in Oracle, what "\*" 
expands to is deterministic, because table columns have a well-defined order, 
and column #2 is always going to be deptno.


was (Author: julianhyde):
Ordinal positions have to be constants. Not bind variables, or expressions. I 
think even +1 should not qualify.

However I think you should consider allowing "*" (say "select * from emp order 
by 2"). It might be different in Phoenix, but in Oracle, what "*" expands to is 
deterministic, because table columns have a well-defined order, and column #2 
is always going to be deptno.

> ORDER BY should support column position as well as column alias
> ---------------------------------------------------------------
>
>                 Key: PHOENIX-1749
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1749
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Serhiy Bilousov
>            Assignee: Alicia Ying Shu
>         Attachments: PHOENIX-1749-v1.patch, PHOENIX-1749.patch
>
>
> In postgreSQL (and many others DBs) you can specify not only column name for 
> the ORDER BY but column number (position in SELECT part) as well as column 
> alias.
> see:
> http://www.postgresql.org/docs/9.4/static/queries-order.html
> http://www.postgresql.org/docs/9.4/static/sql-select.html#SQL-GROUPBY
> Adding such support would be very helpful and sometimes necessary.
> I can provide real queries example if required but basically we want 
> something like this
> given query
> SELECT a, b, TRUNC(current_date(),'HOUR') AS date_truncated FROM table 
> we want 
> ORDER BY 1 ASC, 2 DESC
> ORDER BY date_truncated 
> Having just column number would cover both but having column alias would make 
> queries more readable and human friendly. Plus make it one little stem closer 
> to postgreSQL and SQL standard.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to