模糊查询是很常见很实用的查询技巧,对于初学者需要掌握

一般模糊查询语句如下:

SELECT 字段 FROM 表 WHERE 某字段 Like 条件

其中关于条件,SQL提供了四种匹配模式:

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

比如 SELECT * FROM [user] WHERE u_name LIKE '%三%'

将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。

另外,如果需要找出u_name中既有“三”又有“猫”的记录,请使用and条件
SELECT * FROM [user] WHERE u_name LIKE '%三%' AND u_name LIKE '%猫%'

若使用 SELECT * FROM [user] WHERE u_name LIKE '%三%猫%'
虽然能搜索出“三脚猫”,但不能搜索出符合条件的“张猫三”。

2,_ : 表示任意单个字符。匹配单个任意字符,它常用来限制表达式的字符长度语句:

比如 SELECT * FROM [user] WHERE u_name LIKE '_三_'
只找出“唐三藏”这样u_name为三个字且中间一个字是“三”的;

再比如 SELECT * FROM [user] WHERE u_name LIKE '三__';
只找出“三脚猫”这样name为三个字且第一个字是“三”的;

3,[ ] :表示括号内所列字符中的一个(类似正则表达式)。指定一个字符、字符串或范围,要求所匹配对象为它们中的任一个。

比如 SELECT * FROM [user] WHERE u_name LIKE '[张李王]三'
将找出“张三”、“李三”、“王三”(而不是“张李王三”);

如 [ ] 内有一系列字符(01234、abcde之类的)则可略写为“0-4”、“a-e”
SELECT * FROM [user] WHERE u_name LIKE '老[1-9]'
将找出“老1”、“老2”、……、“老9”;

4,[^ ] :表示不在括号所列之内的单个字符。其取值和 [] 相同,但它要求所匹配对象为指定字符以外的任一个字符。

比如 SELECT * FROM [user] WHERE u_name LIKE '[^张李王]三'
将找出不姓“张”、“李”、“王”的“赵三”、“孙三”等;

SELECT * FROM [user] WHERE u_name LIKE '老[^1-4]';
将排除“老1”到“老4”,寻找“老5”、“老6”、……

5,查询内容包含通配符时

由于通配符的缘故,导致我们查询特殊字符“%”、“_”、“[”的语句无法正常实现,而把特殊字符用“[ ]”括起便可正常查询。据此我们写出以下函数:


function sqlencode(str)
str=replace(str,"[","[[]") '此句一定要在最前
str=replace(str,"_","[_]")
str=replace(str,"%","[%]")
sqlencode=str
end function

下 面这句查询字符串是我以前写的,根据变量  在邮政编码表 zipcode 中查询对应的数据,这句是判断变量 zipcode_key 为非数字时的查询语句,用 % 来匹配任意长度的字符串,从表中地址、市、省三列中查询包含关键字的所有数据项,并按省、市、地址排序。这个例子比较简单,只要你理解了方法就可以写出更 复杂的查询语句。

sql = "select * from zipcode where (address like'%" & zipcode_key & "%') or (city like'%" & zipcode_key & "%') or (province like'%" & zipcode_key & "%') order by province,city,address

转载于:https://www.cnblogs.com/key-star/p/3948847.html

SQL 模糊查询技术相关推荐

  1. php拼音模糊查询,PHP模糊查询技术实例分析【附源码下载】

    本文实例讲述了PHP模糊查询技术.分享给大家供大家参考,具体如下: 简介 从本质上揭密PHP模糊查询技术 功能 根据输入的关键字查找相关用户 PHP用户查询器案例分析 课程目标 掌握PHP模糊技术的应 ...

  2. 微信(QQ)重名困扰探究系列之一 数据库设计与SQL模糊查询

    **徐文艺 写于2022.2.15(农历正月十五)**<br/>转载请注明出处(由于文章在本人智能手机书写,同时仅分析,无法附具体图片,仅文字)联系QQ:286902544 最近偶尔听到有 ...

  3. 【转载】SQL 模糊查询

    SQL 模糊查询 在进行数据库查询时,有完整查询和模糊查询之分. 一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: ...

  4. SQL模糊查询特殊符号应用及详细案例说明

    SQL模糊查询,使用like比较关键字,加上SQL里的通配符,请参考以下:  1.LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden).  2.LIKE'%inger' 将 ...

  5. mysql模糊查询实例_Mysql实例sql模糊查询实例详解

    <Mysql实例sql模糊查询实例详解>要点: 本文介绍了Mysql实例sql模糊查询实例详解,希望对您有用.如果有疑问,可以联系我们. 导读:常用的模糊查询语句:select 字段 fr ...

  6. SQL 模糊查询LIKE字符串匹配

    SQL模糊查询,使用like比较字,详解加例子 1.LIKE'Mc%' 将搜索以字母 Mc 开头的所有字符串(如 McBadden).  2.LIKE'%inger' 将搜索以字母 inger 结尾的 ...

  7. SQL模糊查询学习心得

    SQL模糊查询学习心得 在进行数据库查询时,有完整查询和模糊查询之分. 1. 一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四 ...

  8. sql模糊查询及通配符使用

    sql模糊查询 SQL查询中可以使用where条件中的=,<,> 等符合进行条件精确过滤,但是无法模糊搜索 因此可以使用like语句进行某个字段的模糊搜索 例如: 查询 name字段中包含 ...

  9. 动态sql模糊查询和分页

    文章目录 动态sql 模糊查询 查询返回结果集的处理 分页 动态sql BookMapper xml bookservice 测试: MapperSql.test 运行: 模糊查询 BookMappe ...

最新文章

  1. ASP.NET Cookie
  2. 2022年了我才发现Chrome原来可以直接生成二维码...
  3. virsh 关机_kvm虚拟机不能使用virsh shutdownw命令关闭虚拟机的解决方法
  4. [css] 相邻兄弟选择器、后代选择器和子选择器三者有什么区别?
  5. 这个网站不错,根据引用jar包路径查找原JAR包
  6. 计算机网络与计算机网络连接怎么办,电脑网络连接不上怎么办【是什么原因】...
  7. Centos 7安装Docker可视化管理面板安装中文Portainer
  8. Quartus仿真步骤
  9. Ubuntu 图形桌面与命令行界面 切换快捷键
  10. java 发送html格式邮件 样式混乱解决
  11. 直播搭建软件开发直播搭建技术流程解决方案
  12. ESXI 6.7全面系统教程~win10显卡直通
  13. 关于抖音抓包的一些分析和抖音视频批量下载
  14. 【刷题笔记】CG第二周
  15. 五千字聊一聊接口测试
  16. 易软通WMS仓储管理系统介绍
  17. php登陆网页版微信代码,几行php代码实现微信自动注册登陆 (微信PC扫码受权登陆注册)...
  18. 用虚拟机搭建web服务器模拟学习项目发布
  19. Python绘制简单的曲线图·
  20. 蜀中猿从学oracle,02,时间2015-5-15

热门文章

  1. android 的listview 3大优化策略
  2. POJ-1840 Eqs Hash
  3. go中的database/sql接口
  4. KPI与OKR的区别
  5. SM32的USART串口设置
  6. oracle: 在sqlplus中,执行sql语句
  7. 浏览器控件JxBrowser 6.18发布 | 极大增强了安全性
  8. 【GoLang】GoLang 遍历 map、slice、array方法
  9. 解决:MIUI 8应用商店下载不了软件 APP
  10. 怎么能打开AOPR的日志文件