你想知道查询以_开头数据的方式吗?
或者只记得想找的内容中依稀包含了“精彩”两个字?
又或者只记得有个人名字中有个清,他的姓可能是王/李?想找出他的资料......
答案下方揭晓------
通配符(LIKE的辅助好伙伴):
①%:代表匹配0-n个字符;
那么包含了“精彩”两个字的数据可以这样查询:
select * from 表名 where 列名 like "%精彩%";(这里的列名为精彩两字所在内容的列名)。
②_:代替一个字符;
eg:查询姓章且名字只有两个字的语句:
select * from 表名 where username like "章_";
③[charlist]:字符列中的任意一个单一字符;
那么只记得有个人名字中有个清,姓可能是王/李?想找出他的名字的方式:
select * from user where username like '"[王李]清"
当然,若想找到不是这两个姓人员的资料则可以用[^charlist],即:
select * from user where username like '"[^王李]清";
④查询含有_或者%的数据,则要在前面加一个转义字符:/;
那么查询以_开头数据的sql语句为:
select * from 表名 where 列名 like '/_%';
转义后此语句后面多加了escape '/',表示 / 后的_为普通数据,不代表通配符。
注:like后面"保护"字符串的引号单引号双引号都行,都可以表示字符串,但若要表示的字符串为字段名、表名,则必须用反引号,eg:`user`;(user为表名)