准備的測試表,表記錄如下:
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' -- 查詢不到