postgresql的模糊查询

news/2024/7/9 20:32:51 标签: postgresql, 模糊查询

postgresql模糊查询有两种方式:
- PostgreSQL的LIKE操作符是用来反对使用通配符的模式匹配的文本值。
- PostgreSQL提供有强大的正则表达式系统,可以在数据库级别实现模糊查询

区别

LIKE运算符也可以匹配指定的字符串,但与~不同,LIKE匹配的字符串如果在文本中间出现,则找不到它,相应的行也不会返回。而~在文本进行匹配,如果被匹配的字符串在文本中出现,~将会找到它,相应的行会被返回。

like 操作符

操作符描述
like匹配
not like不匹配

有两个通配符与LIKE运算符一起使用:
- 百分号 (%) 百分号表示零个,一个或多个数字或字符
- 下划线 (_) 下划线代表一个单一的数字或字符

不包含百分号 或者下划线,那么该模式只代表它本身; 这时候 LIKE 的行为就象等号操作符
LIKE 模式匹配总是覆盖整个字串。 要匹配在字串内部任何位置的序列,该模式必须以百分号开头和结尾。
例子:

'abc' LIKE 'abc'    true
'abc' LIKE 'a%'     true
'abc' LIKE '_b_'    true
'abc' LIKE 'c'      false

正则表达式

若正则表达式包含转义字符如'\' ,则需在表达式前加关键字“E”
正则表达式匹配操作符~相当于like

操作符描述例子
~匹配正则表达式,大小写相关select ‘thomas’ ~ ‘.thomas.‘; //true
~*匹配正则表达式,大小写无关select ‘thomas’ ~* ‘.Thomas.‘; //true
!~不匹配正则表达式,大小写相关select ‘thomas’ !~ ‘.Thomas.‘; //true
!~*不匹配正则表达式,大小写无关select ‘thomas’ !~* ‘.vadim.‘; //true

例子:

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

http://www.niftyadmin.cn/n/1066744.html

相关文章

设计模式学习笔记--Flyweight享元模式

Flyweight模式也叫享元模式,是由GoF提出的23种设计模式中的一种。Flyweight模式是构造型模式之一,它通过与其他类似对象共享数据来减小内存占用,所以叫享元。 此模式解决的是由于大量的细粒度对象所造成的内存开销的问题,它在实…

Windows Server 2012 新特性:IPAM的配置

Windows Server 2012 中的 IPAM 是一个新增的内置框架,用于发现、监视、审核和管理企业网络上使用的 IP 地址空间。IPAM 可以对运行动态主机配置协议 (DHCP) 和域名服务 (DNS) 的服务器进行管理和监视。IPAM 包括的组件可以: 自动化 IP 地址基础结构发现…

SQL中EXISTS的使用

exists : 强调的是是否返回结果集 不相关子查询:子查询的查询条件不依赖于父查询的称为不相关子查询。相关子查询:子查询的查询条件依赖于外层父查询的某个属性值的称为相关子查询,带EXISTS 的子查询就是相关子查询 关键词意思返回结果判断…

C#学习笔记:结构变量中的作用域

staticvoidmain(){ inti; for(i0;i<10;i) { stringtext"Line"Covert.ToString(i); Console.WriteLine("{0}",text); } Console.WriteLine("Last text output in loop:{0}",text); Console.ReadKey();}字符串常量text是…

Heibernate主键生成策略

1、assigned 主键由外部程序负责生成&#xff0c;在 save() 之前必须指定一个。Hibernate不负责维护主键生成。与Hibernate和底层数据库都无关&#xff0c;可以跨数据库。在存储对象前&#xff0c;必须要使用主键的setter方法给主键赋值&#xff0c;至于这个值怎么生成&#xf…

【windows phone】启动器与选择器之CameraCaptureTask和PhotoChooserTask【转】

一、CameraCaptureTask选择器。 它用于启动照相机&#xff0c;当你拍下照片后&#xff0c;自动把照的字节流返回给调用方应用程序。前文说过&#xff0c;启动器和选择的使用方法和步骤都是一样的。对于CameraCaptureTask组件也如此&#xff0c;不过注意的一点是&#xff0c;处理…

SPring中quartz的配置(可以用实现邮件定时发送,任务定时执行,网站定时更新等)...

http://www.cnblogs.com/kay/archive/2007/11/02/947372.html 邮件或任务多次发送或执行的问题&#xff1a; 1.<property name"concurrent" value"false" />可以用于防止任务多次执行 2.将quartz的配置单独出来&#xff0c;防止tomcat加载spring. 具…

shiro 与 web 的结合

本次使用的jar包为 shiro-core-1.2.4.jar shiro-web-1.2.4.jar 从Shiro 1.2开始引入了Environment/WebEnvironment的概念&#xff0c;即由它们的实现提供相应的SecurityManager及其相应的依赖。ShiroFilter会自动找到Environment然后获取相应的依赖。 <listener> <li…