一般在查询数据库的时候,我们常用的都是=来查找某个表的特定信息。比如
select * from st WHERE name ='张小平';
可以查出以下语句,但假如我们想找以下所有姓张的同学,这就需要用到like语句,like语句一般是和字符串的匹配类似。LIKE语句后面一般采用 %标示任意字符,比如下面这个语句就可以查出所有姓张的同学。
select * from st WHERE name like '张%';
百分号的位置代表匹配的其他字符的位置,如果写成%张,就会查出名字中第一个字符后面包含张字的学生。LIKE语句后面的的字符中,可以包含多个%,%的意思就是代表匹配此字符前后的所有字符。这个找个数据库试试就可以看出区别了。
like语句只是一个特殊的条件,跟在where后面,根据where的格式,后面可以跟随多个条件,所以可以在like后在跟and 或者or语句匹配查询数据,如下面这个可以一并查处姓李和姓张的学生信息。
select * from st WHERE name like '%张%'; or name like '李%';