UNNEST is only supported in our calcite branch currently. There's been no
release yet with support for it. If you're interested, I'd encourage you to
get involved in the Phoenix/Calcite integration work or implement support
for it in our 4.x branches.

Thanks,
James

On Sun, Mar 19, 2017 at 4:59 PM, Bernard Quizon <
bernard.qui...@stellarloyalty.com> wrote:

> Hi,
>
> I've tried using phoenix-4.6.0-Hbase-1.1 and  phoenix-4.7.0-Hbase-1.1 to
> test if UNNEST is now available but it returns a syntax error.
>
> Both are resulting to this error
>
> sqlline version 1.1.8
> 0: jdbc:phoenix:localhost> SELECT t.k FROM UNNEST((SELECT k FROM a)) AS
> t(k);
> Error: ERROR 601 (42P00): Syntax error. Encountered "(" at line 1, column
> 24. (state=42P00,code=601)
> org.apache.phoenix.exception.PhoenixParserException: ERROR 601 (42P00):
> Syntax error. Encountered "(" at line 1, column 24.
> at org.apache.phoenix.exception.PhoenixParserException.newExcep
> tion(PhoenixParserException.java:33)
> at org.apache.phoenix.parse.SQLParser.parseStatement(SQLParser.java:111)
> at org.apache.phoenix.jdbc.PhoenixStatement$PhoenixStatementPar
> ser.parseStatement(PhoenixStatement.java:1285)
> at org.apache.phoenix.jdbc.PhoenixStatement.parseStatement(Phoe
> nixStatement.java:1366)
> at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStat
> ement.java:1429)
> at sqlline.Commands.execute(Commands.java:822)
> at sqlline.Commands.sql(Commands.java:732)
> at sqlline.SqlLine.dispatch(SqlLine.java:808)
> at sqlline.SqlLine.begin(SqlLine.java:681)
> at sqlline.SqlLine.start(SqlLine.java:398)
> at sqlline.SqlLine.main(SqlLine.java:292)
> Caused by: NoViableAltException(90@[])
> at org.apache.phoenix.parse.PhoenixSQLParser.column_name(Phoeni
> xSQLParser.java:2397)
> at org.apache.phoenix.parse.PhoenixSQLParser.dyn_column_def(Pho
> enixSQLParser.java:3992)
> at org.apache.phoenix.parse.PhoenixSQLParser.dyn_column_defs(Ph
> oenixSQLParser.java:3925)
> at org.apache.phoenix.parse.PhoenixSQLParser.table_factor(Phoen
> ixSQLParser.java:5900)
> at org.apache.phoenix.parse.PhoenixSQLParser.table_ref(PhoenixS
> QLParser.java:5672)
> at org.apache.phoenix.parse.PhoenixSQLParser.table_list(Phoenix
> SQLParser.java:5608)
> at org.apache.phoenix.parse.PhoenixSQLParser.parseFrom(PhoenixS
> QLParser.java:5573)
> at org.apache.phoenix.parse.PhoenixSQLParser.single_select(Phoe
> nixSQLParser.java:4368)
> at org.apache.phoenix.parse.PhoenixSQLParser.unioned_selects(Ph
> oenixSQLParser.java:4470)
> at org.apache.phoenix.parse.PhoenixSQLParser.select_node(Phoeni
> xSQLParser.java:4535)
> at org.apache.phoenix.parse.PhoenixSQLParser.oneStatement(Phoen
> ixSQLParser.java:766)
> at org.apache.phoenix.parse.PhoenixSQLParser.statement(PhoenixS
> QLParser.java:500)
> at org.apache.phoenix.parse.SQLParser.parseStatement(SQLParser.java:108)
>
> Even this simple one is resulting to syntax error:
>
> 0: jdbc:phoenix:localhost> SELECT * FROM UNNEST((ARRAY[1,2,3]));
> Error: ERROR 601 (42P00): Syntax error. Encountered "(" at line 1, column
> 22. (state=42P00,code=601)
> org.apache.phoenix.exception.PhoenixParserException: ERROR 601 (42P00):
> Syntax error. Encountered "(" at line 1, column 22.
> at org.apache.phoenix.exception.PhoenixParserException.newExcep
> tion(PhoenixParserException.java:33)
> at org.apache.phoenix.parse.SQLParser.parseStatement(SQLParser.java:111)
> at org.apache.phoenix.jdbc.PhoenixStatement$PhoenixStatementPar
> ser.parseStatement(PhoenixStatement.java:1185)
> at org.apache.phoenix.jdbc.PhoenixStatement.parseStatement(Phoe
> nixStatement.java:1268)
> at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStat
> ement.java:1339)
> at sqlline.Commands.execute(Commands.java:822)
> at sqlline.Commands.sql(Commands.java:732)
> at sqlline.SqlLine.dispatch(SqlLine.java:808)
> at sqlline.SqlLine.begin(SqlLine.java:681)
> at sqlline.SqlLine.start(SqlLine.java:398)
> at sqlline.SqlLine.main(SqlLine.java:292)
> Caused by: NoViableAltException(90@[])
>
> Am I missing something? Or UNNEST is really not available yet on
> phoenix-4.7.0-Hbase-1.1 and phoenix-4.6.0-Hbase-1.1.
> BTW, I used this file as reference for the query syntax:
> https://github.com/apache/phoenix/blob/4.7.0-HBase-1
> .1/phoenix-core/src/it/java/org/apache/phoenix/end2end/UnnestArrayIT.java
>
> Also, I have verified that I'm running phoenix-4.7.0-Hbase-1.1 and
> phoenix-4.6.0-Hbase-1.1.
>
>
> Thanks!
>

Reply via email to