
158
|
第
9
章
SELECT u&'\2168', 'IX', u&'\2168' = 'IX', normalize(u&'\2168', NFKC) = 'IX';
_col0 | _col1 | _col2 | _col3
-------+-------+-------+-------
Ⅸ | IX | false | true
(1 row)
9.13
正则表达式
Presto
通过提供
SQL
LIKE
运算符和正则表达式(
regex
)函数来支持模式匹配。
LIKE
返回
一个布尔值,语法为
搜索字段
LIKE
模式
。
LIKE
非常适用于只需要基本模式匹配的场合,但在其他场合可能表达力不足。
LIKE
模式支
持两个符号:
_
表示匹配任何一个字符,
%
表示匹配
0
个或多个字符。
假设你想找到从达拉斯地区出发的航班,可以写出下面的查询:
SELECT origincityname, count(*)
FROM flights_orc
WHERE origincityname LIKE '%Dallas%'
GROUP BY origincityname;
origincityname | _col1
-----------------------+---------
Dallas/Fort Worth, TX | 7601863
Dallas, TX | 1297795
(2 rows)
任何更复杂的模式匹配都需要使用正则表达式函数,这些函数使用
Java
模式语法提供的强
大模式匹配能力。表
9-10 ...