PostgreSQL数据库模糊查询区分大小写(like与ilike用法)

准备的测试表,表记录如下:

like

说明:模糊查询某字段中含英文字母时查询区分大小写(一般写法,标准SQL)

使用like关键字时模糊查询条件必须大小写一致才能查找到记录

用法:

select enname, cnname from student where enname like '%john%'  -- 查询不到
select enname, cnname from student where enname like '%JoHn%'  -- 查询不到
select enname, cnname from student where enname like '%John%'  -- 查询得到

ilike

说明:模糊查询某字段中含英文字母时查询不区分大小写(特殊写法,非标准SQL,PostgreSQL数据库独有)

用法:

select enname, cnname from student where enname ilike '%john%'  -- 查询得到
select enname, cnname from student where enname ilike '%JoHn%'  -- 查询得到
select enname, cnname from student where enname ilike '%John%'  -- 查询得到

扩展

  • 非标准SQL:即某一数据库系统中独有的产物,比如PostgreSQL中使用 ilike 关键字来模糊查询时进行区分大小写,MySQL中还可以使用 # 号来进行注释等

  • where查询条件中如有英文时,默认查询是区分大小写的,如:select enname, cnname from student where enname = 'JoHn' -- 查询不到

posted @ 2020-03-26 14:32  知音12138  阅读(4221)  评论(0编辑  收藏  举报