我正在研究搜索功能,我需要执行一个简单的查询来检查是否有任何匹配转换为小写的搜索字符串。简单来说,用户搜索“SiteName”,然后我查询是否有任何匹配“sitename”的内容。
但是,当我在查询中使用 LOWER() 函数时出现错误。
这是我尝试过的:
POST /_sql?format=json
{
"query":"SELECT siteid, sitename FROM zones WHERE
sitename LIKE LOWER('SiteFirst') ", "fetch_size" : 90
}
我得到这个错误:
{
"error" : {
"root_cause" : [
{
"type" : "parsing_exception",
"reason" : "line 1:70: mismatched input 'LOWER' expecting {'?',
STRING}"
}
],
"type" : "parsing_exception",
"reason" : "line 1:70: mismatched input 'LOWER' expecting {'?', STRING}",
"caused_by" : {
"type" : "input_mismatch_exception",
"reason" : null
}
},
"status" : 400
}
同样的查询在没有 LOWER() 的情况下也可以工作。
有关如何解决此错误的任何建议?谢谢!