postgresql提供有強大的正則表達式系統,能夠在數據庫級別實現模糊查詢。
正則表達式匹配操做符:正則表達式
操做符 | 描述 | 例子 |
---|---|---|
~ | 匹配正則表達式,大小寫相關 | 'thomas' ~ '.*thomas.*' |
~* | 匹配正則表達式,大小寫無關 | 'thomas' ~* '.*Thomas.*' |
!~ | 不匹配正則表達式,大小寫相關 | 'thomas' !~ '.*Thomas.*' |
!~* | 不匹配正則表達式,大小寫無關 | 'thomas' !~* '.*vadim.*' |
例如:
找出數據表account中全部用戶名包含baidu且不區分大小寫的用戶的信息。
select * from account where username ~* 'baidu';
使用正則表達式以後能夠實現不區分大小寫的功能,而且大大減小了sql語句的長度。sql
摘自:http://blog.163.com/clevertanglei900@126/blog/static/1113522592010102215419516/數據庫