SQL中Like的语法


欢迎你~~

我等你很久了呢

你好! 这是我第一次写。请大家多多支持。

Like的运用场合主要在模糊查询的时候 , 一般以查询字符串居多 , 这里据一些例子来说他的一般用法:
首先是Like的语法:

SELECT “栏位名”
FROM “表格名”
WHERE “栏位名” LIKE {套式};

以下是几个例子:

  • ‘A_Z’: 所有以 ‘A’ 起头,且以 ‘Z’ 为结尾的字串。例如: ‘ACZ’ 或者 ‘A3Z’ 都符合这一个模式,而
    ‘AKKZ’ 并不符合 (因为在 A 和 Z 之间有两个字原,而不是一个字原)。
  • ‘ABC%’: 所有以 ‘ABC’ 起头的字串。例如,‘ABCD’ 和 ‘ABCABC’ 都符合这个套式。
  • ‘%XYZ’: 所有以 ‘XYZ’ 结尾的字串。同理,例如,‘WXYZ’ 和 ‘ZZXYZ’ 都符合这个套式。
  • ‘%AN%’: 所有含有 ‘AN’ 这个套式的字串。举例来说, ‘ok ANGELES’ 和 ‘1AN DIAOCHAN’
    都符合这个套式。

我们将以上最后一个例子用在我们的 Info 表格上:

Name Sales Date
ok ANGELES 222 2020- 01-15
1AN DIAOCHAN 333 2020- 01-15
Dashes 444 2020- 01-15

写代码:

SELECT * FROM Info --表名 where Name Like '%AN%' 
  • 1
  • 2

查询结果:

Name Sales Date
ok ANGELES 222 2020- 01-15
1AN DIAOCHAN 333 2020- 01-15

补充:

  1. 查询name字段中包含有“变量”字的。
select * from 表名 where name like '%变量%' 
  • 1

这里不要使用*来代替,一般在使用0个或者任意个字符构成的字符串的时候最好使用%。
不过在首或尾使用可以相互替换,如果在头尾同时使用的话,就必须要使用%。

  1. 查询name字段中以“李”字开头。
select * from 表名 where name like '李*' 
  • 1

或者

select * from 表名 where name like '李%' 
  • 1
  1. 查询name字段中含有数字的。
select * from 表名 where name like '%[0-9]%' 
  • 1
  1. 查询name字段中含有小写字母的。
select * from 表名 where name like '%[a-z]%' 
  • 1
  1. 查询name字段中不含有数字的。
select * from 表名 where name like '%[!0-9]%'
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM