2017-08-26 139 views
1

我有一个表像值:PostgreSQL的寻找到字符串包含精确的字符串

  • “人力资源主管”

“的管理协助”如果我有这样的字符串“小时“我想找到”人力资源主管“这一行。 一个简单的“LIKE%hr%”不够准确,因为其他行也包含“hr”的字符串。 我想我需要某种正则表达式。

也许有人可以给我一个提示,如何写它。

感谢 亚历克斯

+0

使用'WHERE山口〜“\ YHR \ y'' –

回答

1

使用

WHERE col ~ '\yHR\y' 

\yHR\y正则表达式匹配一个HR作为一个整体字(该\y是一个单词边界,它开始或词的结尾匹配)。

Rextester demo

CREATE TABLE table1 
    (s character varying) 
; 

INSERT INTO table1 
    (s) 
VALUES 
    ('Head of HR'), 
    ('Assistance of management'), 
    ('CHROME') 
; 

select * from table1 where s ~ '\yHR\y'; 

结果:

enter image description here

+1

很好,谢谢。这对我有用。 –

+0

@AlexBug:很高兴为你工作。如果我的回答对你有帮助,请考虑upvoting(参见[如何在堆栈溢出?](http://meta.stackexchange.com/questions/173399/how-to-upvote-on-stack-overflow)) 。 –