Hive查询字符串大小写

时间:2014-02-25 13:54:41

标签: string select hive case

有没有办法在执行此操作时获取所有类型的字符串案例:

select count(word) from table where word="abcd"

实际上,在执行此操作时,它与此不同:

select count(word) from table where word="ABCD"

3 个答案:

答案 0 :(得分:15)

忽略where子句中的大小写非常简单。例如,您可以将比较的两边转换为全部大写符号:

SELECT COUNT(word) 
FROM   table 
WHERE  UPPER(word)=UPPER('ABCD')

无论用于搜索词的大小写,UPPER函数都会根据需要进行匹配。

答案 1 :(得分:5)

select count(word) from table where lower(word)="abcd"

但是这假设它不是分区表。如果它是按字分区的,那么你会开始进行全表扫描,因为它是“较低的”(

答案 2 :(得分:1)

从表中选择计数(字) 单词RLIKE
“(?i)WOrd1 | wOrd2”