2017-03-17 64 views
0

就我而言,Presto連接到已配置爲不區分大小寫的MySQL數據庫。但通過Presto的任何搜索似乎都區分大小寫。如何將Presto搜索配置爲不區分大小寫?

問題:

1)是否有配置普雷斯托搜索要區分在敏感的方法嗎?如果不是,可以在Presto-MySQL連接器中進行更改以使搜索不區分大小寫?

2)如果底層數據庫不區分大小寫,不應該Presto搜索也是不區分大小寫的? (我假設Presto只生成查詢計劃,並且實際執行發生在底層數據庫上)

示例:考慮MySQL上的下表。

name 
____ 
adam 

Alan 


select * from table where name like '%a%' 
// returns adam, Alan on MySQL 
// returns only adam on Presto 

select * from table where name = 'Adam' 
// returns adam on MySQL 
// returns NIL on Presto 
+0

這是什麼都與'facebook'做?標籤已移除。 – CBroe

回答

1

你必須通過比較值要麼歸到更低,或到上,類似這樣的明確要求區分大小寫的比較:

select * from table where lower(name) like '%a%'; 

select * from table where lower(name) = lower('Adam');