我有一个包含以下值的表:
- “人力资源主管”
- “管理协助”
如果我有像“hr”这样的字符串,我想找到“人力资源主管”这一行。 一个简单的“LIKE %hr%”不够精确,因为也会找到字符串包含“hr”的其他行。 我想我需要某种正则表达式。
也许有人可以给我提示,如何写。
谢谢 亚历克斯
最佳答案
使用
WHERE col ~ '\yHR\y'
\yHR\y
正则表达式将匹配一个 HR
作为一个完整的单词(\y
是一个单词边界,它匹配单词的开头或结尾)。
CREATE TABLE tabl1
(s character varying)
;
INSERT INTO tabl1
(s)
VALUES
('Head of HR'),
('Assistance of management'),
('CHROME')
;
select * from tabl1 where s ~ '\yHR\y';
结果:
关于regex - PostgreSQL 查找字符串包含确切字符串的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45899148/