在Mysql中使用的 like '%刘%' 模糊查询 在Hive中不适用
数据源
0: jdbc:hive2://linux01:10000> select * from a
. . . . . . . . . . . . . . .> ;
+-------+---------+---------+
| a.id | a.name | a.p_id |
+-------+---------+---------+
| 1 | a | 1 |
| 2 | b | 3 |
| 3 | c | 2 |
| 4 | d | 3 |
| 5 | e | 3 |
| 6 | f | 2 |
| 1 | 刘备 | 100 |
| 2 | 张飞 | 200 |
| 3 | 关羽 | 300 |
| 4 | 诸葛亮 | 400 |
| 5 | 曹操 | 800 |
| 1 | 刘备 | 100 |
| 2 | 张飞 | 200 |
| 3 | 关羽 | 300 |
| 4 | 诸葛亮 | 400 |
| 5 | 曹操 | 800 |
| 1 | 刘备 | 100 |
| 2 | 张飞 | 200 |
| 3 | 关羽 | 300 |
| 4 | 诸葛亮 | 400 |
| 5 | 曹操 | 800 |
+-------+---------+---------+
因此在Hive中使用的应该是 (亲测有效)
select
*
from
a
where name like concat("%","刘","%") ;