В этом разница между регулярными выражениями и аналогичными шаблонами.
LIKE
встроен в язык SQL. Он имеет два подстановочных знака:
%
представляет любое количество символов, включая ноль. _
представляет ровно один символ.
Регулярные выражения гораздо более гибкие для сопоставления практически с любым шаблоном в строке.
Когда был изобретен SQL, я не думаю, что регулярные выражения широко использовались в компьютерных системах - по крайней мере, люди в IBM, работавшая над реляционными базами данных, возможно, не была знакома с людьми из ATT, которые изобретали Unix.
Регулярные выражения, конечно, намного мощнее, чем шаблоны LIKE
. И Hive поддерживает их с помощью оператора RLIKE
(и некоторых других функций).
Функциональность SHOW
не является стандартной SQL. Поэтому разработчики Hive выбрали более гибкий метод сопоставления с образцом.