就我而言,Presto连接到已配置为不区分大小写的MySQL数据库。但是,通过Presto进行的任何搜索似乎都区分大小写。

问题:

1)是否可以将Presto搜索配置为区分区分大小写?如果不是,是否可以在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

最佳答案

您必须通过将比较值标准化为较低或较高来明确要求不区分大小写的比较,如下所示:

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

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

关于presto - 如何将Presto搜索配置为不区分大小写?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42850329/

10-11 10:19