在查询控件上怎么使用SQL的模糊查询?

网友解答: 模糊查询其实就是SQL语句的关键字“like”的使用。SQL查询分为完整查询和模糊查询,主要区别在于对查询字段的匹配程度,完整查询要求完全匹配,而模糊查询则要求部分匹配。我们

网友解答:

模糊查询其实就是SQL语句的关键字“like”的使用。

SQL查询分为完整查询和模糊查询,主要区别在于对查询字段的匹配程度,完整查询要求完全匹配,而模糊查询则要求部分匹配。

我们举个例子。假设有人员表,表名person,表里包含姓名(p_name),性别(p_sex),出生日期(p_birthday)等字段。括号内为字段名。表内有大量人员信息。

1,完整查询,比如我们想查询姓名为张小海的人员,查询语句为

select * from peeson where p_name='张小海'

如果表内有张小海的记录,则返回张小海信息,否则返回空。

2,模糊查询,比如我们想查询姓名中包含海字的人员,查询语句为

select * from person where p_name like '%海%'

运行语句,将会返回所有姓名中含海字的人员,张小海,张大海,刘海,赵海明,海公公等等信息。

SQL查询like关键字有四种匹配方式。

1.%,代表任意长度的字符。

2._,代表任意一个字符。

select * from person where p_name like '_海'

运行后返回姓名是两个字,最后一个字是海的所有人员。

3.[],代表中括号内所列字符中的一个。

select * from person where p_name like '[张王李赵]海'

运行后,如果记录有的话,返回张海,王海,李海,赵海。

4.[^],代表不包含中括号内所列字符中的一个,和[]相对应。

select * from person where p_name like '[^张王李赵]海'

运行后将返回刘海,高海等等,不包含张王李赵这四个姓。

标签: