当尝试仅选择字符串等于Hive中的值的列时,我返回一个空值。
DESCRIBE table_name;
a string
b int
c in
SELECT * FROM table_name;
"more" 10 30
"dur" 11 30
"vowww" 13 30
我正在运行的SELECT ... WHERE查询是:
SELECT * FROM table_name WHERE a='more'
我也尝试过:
要查看双引号是否有效,查询其他列值是否有效(不可行)
答案 0 :(得分:2)
查询的结果是:
SELECT * FROM table_name;
"more" 10 30
"dur" 11 30
"vowww" 13 30
此查询将返回正确的值:
SELECT * FROM table_name WHERE a='"more"'
您应该使用"
删除regex
。
请考虑阅读此答案
Values inserted in hive table with double quotes for string from csv file
答案 1 :(得分:1)
第一次尝试通配符以查看它是否正在获取记录
SELECT * FROM table_name WHERE a like '%more%'
然后,如果它正在获取记录
SELECT * FROM table_name WHERE a='"more"'