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

ASF subversion and git services commented on KYLIN-5393:
--------------------------------------------------------

Commit bbcf3df8d7e1eafa0ccc2914e76ff8ac122d0215 in kylin's branch 
refs/heads/kylin5 from songzhxlh-max
[ https://gitbox.apache.org/repos/asf?p=kylin.git;h=bbcf3df8d7 ]

KYLIN-5393 fix bug when double quote in pushdown sql


> Query SQL statement contains single quotes in the fuzzy match field value and 
> fails to parse
> --------------------------------------------------------------------------------------------
>
>                 Key: KYLIN-5393
>                 URL: https://issues.apache.org/jira/browse/KYLIN-5393
>             Project: Kylin
>          Issue Type: Bug
>          Components: Query Engine
>    Affects Versions: 5.0-alpha
>            Reporter: Jiale He
>            Assignee: Jiale He
>            Priority: Major
>             Fix For: 5.0-alpha
>
>         Attachments: KYLIN-5393 Design & Test.pdf, 
> image-2023-01-10-10-04-20-520.png, image-2023-01-10-10-06-13-576.png
>
>
> {code:java}
> SELECT
> COUNT(*)
> FROM
> ADVSEARCHIADSECURE_2.vw_exp_commission
> WHERE
> BUSINESS_ID = '15030'
> AND (AMOUNT_UNIT_TYPE_ID = '3449880796')
> AND (AS_OF_PERIOD_ID = '3320923194')
> AND (PERIOD_ID = '3320923194')
> AND (EARNING_GROUP_NAME = 'Events')
> AND (EMPLOYEE_ID = '0053p000007bEzjAAE')
> AND (
> (lower(CUSTOMER_NAME) like '%abb4y000000ggzmcaq%')
> OR (lower(PRODUCT_NAME) like'%abb4y000000ggzmcaq%')
> OR (
> lower(GEOGRAPHY_NAME) like'%abb4y000000ggzmcaq%'
> )
> OR (lower(ORDER_CODE) like'%abb4y000000ggzmcaq%')
> OR (
> lower(ITEM_CODE) like'%abb' 4y000000ggzmcaq % ')
> ){code}
> 上述 fifter 条件中 {{{}lower(ITEM_CODE) like '%abb'4y000000ggzmcaq%'{}}},模糊匹配值 
> \{{abb'4y000000ggzmcaq}}中含有单引号,导致在解析阶段就报错
> 另外也根据手册提示尝试加单引号进行转译,但是引号在字段中间的情况 kylin5 无法处理
>  
> 本地验证,发现如果加上单引号转义后查询用模型来回答查询结果是正常的,但若是 HIVE 下压查询,下压的查询结果不正确:
> !image-2023-01-10-10-04-20-520.png|width=758,height=464!
> !image-2023-01-10-10-06-13-576.png|width=743,height=463!
>  
> Hive 中不是用引号转义的,所以结果处理有问题
>  
> h1. Root Cause{*}{*}
> calcite不支持单个'字符出现在常量的中间,因此ke手册中标注是用'进行转义。
> 在查询索引的时候''等价于',但是下压的时候spark不这么认为,因此查询结果不一致。
>  
> h1. 期望
> 能转义查询 SQL 语句中的单引号 针对单引号查询,希望 kylin5 查询结果和 Hive 下压查询结果一致
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to