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

James Taylor commented on PHOENIX-1749:
---------------------------------------

[~julianhyde] - somewhat esoteric SQL question. Is it allowed to use a bind 
variable for the ordinal position of an ORDER BY:
{code}
SELECT a, b, TRUNC(current_date(),'HOUR') AS date_truncated FROM table 
ORDER BY ? ASC, ? DESC
{code}
where I'd bind the column ordinal position?

What about this, where it's an expression that evaluates to a constant?
{code}
SELECT a, b, TRUNC(current_date(),'HOUR') AS date_truncated FROM table 
ORDER BY 2*2-3
{code}
Weird, I know, but what should happen?


> 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.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