首页 > 代码库 > POSTGRESQL 支持正则表达式

POSTGRESQL 支持正则表达式

昨天遇到了一个奇葩的问题,需要在WHERE条件里面添加正则表达式,抱着试试看的态度,查看了一下postgresql,发现确实可以支持正则,例如:

select * from user where email ~ ^[A-H] --匹配email地址以A-H开头的记录  select * from user where email ~* ^[a-h] --匹配email地址以A-H和a-h开头的记录  

或者:

SELECT CAST(sight_id AS INTEGER), CAST(source_id AS INTEGER) product_id, FROM tableNameWHERE sight_id ~ ^[1-9] AND source_id ~ ^[1-9]

至于正则该怎么写,我就不介绍了。有兴趣的同学可以查看posgre的资料:http://www.php100.com/manual/PostgreSQL8/