ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

SQL怎么实现模糊查询

2020-12-06 17:29:38  阅读:206  来源: 互联网

标签:username 字符 like 模糊 查询 user SQL where select


模糊查询的语句一般如下:

SELECT 字段 FROM 表 WHERE 某字段 LIKE 条件;

关于条件部分,有以下匹配模式:

1. %:表示零个或多个字符。

可以匹配任意类型和任意长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。

select * from user where username like '%张%';

将会把user这张表里面,列名username中含有的记录全部查询出来。


如果需要找到user这张表里面,字段username中既有,又有的记录,可以使用and条件:

select * from user where username like '%张%' and username like '%李%';

可以查询出来所有包含的所有内容,所在的前后位置无所谓


select * from user where username like '%李%张%';

查出来包含李张的内容,但是查不出来张李的内容。

2. _:表示任意单个字符

匹配单个任意字符,它常用来限制表达式的字符长度。

select * from user where username like '_小_';

只能找到张小明这样username为三个字且中间一个字是的内容。


select * from user where username like '小__';

只能找到小坏蛋这样username为三个字且第一个字是的内容。

3. []:表示括号内所列字符中的一个(类似正则表达式)。

指定一个字符、字符串或范围,要求所匹配的对象为他们中的任一个

[]内有一系列字符(01234,abcde之类的)则可略写为0-4a-e

select * from user where username like '老[0-9]';

将找出“老1”、“老2”、……、“老9”

4. [^]:表示不在括号所列之内的单个字符。

其取值和[]相同,但它所要求匹配对象为指定字符以外的任一个字符。

select * from user where username LIKE'[^李王秦]飞';

将找出不是“李飞” "王飞”“秦飞“,而是"张飞"等。

标签:username,字符,like,模糊,查询,user,SQL,where,select
来源: https://blog.csdn.net/weixin_43207025/article/details/110747671

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有