遇到问题--presto---mismatched input ‘in‘ expecting {, ‘AND‘, ‘EXCEPT‘, ‘GROUP‘, ‘HAVING‘, ‘INTERSECT‘, ‘
Posted 张小凡vip
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了遇到问题--presto---mismatched input ‘in‘ expecting {, ‘AND‘, ‘EXCEPT‘, ‘GROUP‘, ‘HAVING‘, ‘INTERSECT‘, ‘相关的知识,希望对你有一定的参考价值。
情况
在presto中使用查询语句如下:
select id from table where id in array[1,2,3];
报错如下:
select id from table where id in array[1,2,3];
mismatched input 'in' expecting <EOF>, 'AND', 'EXCEPT', 'GROUP', 'HAVING', 'INTERSECT', 'LIMIT', 'OR', 'ORDER', 'UNION'
原因
mismatched input ‘in’ expecting 含义为 in不是关键词,无法识别。
解决方案
需要使用contains关键词替换in的用法
使用语句如下:
Select id from table where contains(ARRAY[1,2,3], id) ;
详细的原因解释可查看文档
https://prestodb.io/docs/current/functions/array.html
以上是关于遇到问题--presto---mismatched input ‘in‘ expecting {, ‘AND‘, ‘EXCEPT‘, ‘GROUP‘, ‘HAVING‘, ‘INTERSECT‘, ‘的主要内容,如果未能解决你的问题,请参考以下文章
遇到问题--presto---mismatched input ‘in‘ expecting {, ‘AND‘, ‘EXCEPT‘, ‘GROUP‘, ‘HAVING‘, ‘INTERSECT‘, ‘