SQL中的等号、IN、LIKE三者的比较
SQL中的等号、IN、LIKE三者的比较SQL 中等号、IN、LIKE 三者都可以用来进行数据匹配 。但三者并不相同。
等号是用来查找与单个值匹配的所有数据;
IN 是 用来查找 与多个值匹配的所有数据;
而 LIKE用来查找与一个模式匹配的所有数据。
1.等号 确切知道所要查
确切知道所要查找的内容,且为单一值时,可以使用等号运算符来进行数据比较。等号运算符中可以使用字符串、日期或数字。例如,查找名为“王静”的工作人员,可以使用等号进行匹配:
SELECT name, sex, id, salary FROM Employee WHERE name = ’王静’
————— ——— —— ————
Results
name sex id salary
王静 女 3004 3000.00
[1row] www.dedecms.com
2. IN
当确切知道所要查找的内容,且为多个值时,可以使用 IN 子句来进行数据比较。IN 子句中也可以使用数字、字符串或日期。例如,查找名为“王静”、“王力刚”、“王亚鹏”的工作人员,可以使用 IN 子句进行匹配:
SELECT name, sex, id, salary FROM Employee WHERE name IN(’王静’, ’王力刚’, ’王亚鹏’)
————— ——— —— ————
Results name sex id salary
王静 女 3004 3000.00
王力刚 男 5003 3000.00
王亚鹏 男 4004 6000.00
[3rows] www.dedecms.com
3.LIKE 子句
当无法确切知道所要查找的值,而是知道所要查找的数据符合的模式时,可以使用LIKE 子句进行匹配。一般来说,LIKE 子句仅在字符串类型时使用,有些系统也支持在日期数据中使用,但对数字类型数据是不能使用 LIKE 子句的。例如,查找名字中都包含汉字“燕”的工作人员,可以使用 LIKE 子句进行匹配:
SELECT name, sex, id, salary FROM Employee WHERE name LIKE ’%燕%’
Results
name sex id salary
刘燕 女 2002 3000.00
张敏燕 女 4002 4000.00
[2rows]
需要注意的是,通配符只有在 LIKE 子句中使用时才具有通配符的含义。不在 LIKE子句中使用时, 就不具有特殊的含义,仅表示其本身的值。
例如, 在等号中使用字符 “%”,将上例修改为:
SELECT name, sex, id, salary FROM Employee WHERE name = ’%燕%’
Results name sex id salary
————— ——— —— ————
[0row]
则无法找到任何数据,因为使用等号时字符 “%” 仅表示其本身的含以, 而 Employee表中并没有 name 列值为“%燕%”的记录。
SQL中的等号、IN、LIKE三者的比较的更多相关文章
- LINQ TO SQL 中的join(转帖)
http://www.cnblogs.com/ASPNET2008/archive/2008/12/21/1358152.html join对于喜欢写SQL的朋友来说还是比较实用,也比较容易接受的东西 ...
- SQL中的连接(极客时间)
SQL中的连接 关系型数据库的核心之一就是连接, 而在不同的标准中, 连接的写法上可能有区别, 最为主要的两个SQL标准就是SQL92和SQL99了, 后面的数字表示的是标准提出的时间. SQL92中 ...
- SQL中Round(),Floor(),Ceiling()函数的浅析
项目中的一个功能模块上用到了标量值函数,函数中又有ceiling()函数的用法,自己找了一些资料,对SQL中这几个函数做一个简单的记录,方便自己学习.有不足之处欢迎拍砖补充 1.round()函数遵循 ...
- 关于sql中in 和 exists 的效率问题,in真的效率低吗
原文: http://www.cnblogs.com/AdamLee/p/5054674.html 在网上看到很多关于sql中使用in效率低的问题,于是自己做了测试来验证是否是众人说的那样. 群众: ...
- 学习sql中的排列组合,在园子里搜着看于是。。。
学习sql中的排列组合,在园子里搜着看,看到篇文章,于是自己(新手)用了最最原始的sql去写出来: --需求----B, C, F, M and S住在一座房子的不同楼层.--B 不住顶层.C 不住底 ...
- SQL中distinct的用法
SQL中distinct的用法 1.作用于单列 2.作用于多列 3.COUNT统计 4.distinct必须放在开头 5.其他 在表中,可能会包含重复值.这并不成问题,不过,有时您也许希望仅仅列出 ...
- hibernate中java类的成员变量类型如何映射到SQL中的数据类型变化
hibernate映射文件??.hbm.xml配置映射元素详解--Hibernate映射类型 在从Hibernate的java的成员类型映射到SQL中的数据类型,其内映射方式它满足,SQL可以自己调制 ...
- C#调用SQL中的存储过程中有output参数,存储过程执行过程中返回信息
C#调用SQL中的存储过程中有output参数,类型是字符型的时候一定要指定参数的长度.不然获取到的结果总是只有第一字符.本人就是由于这个原因,折腾了很久.在此记录一下,供大家以后参考! 例如: ...
- sql中case when语句的使用-来自网摘文章
Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END ...
随机推荐
- bzoj4034 树上操作
Description 有一棵点数为 N 的树,以点 1 为根,且树点有边权.然后有 M 个 操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a . 操作 2 :把某个节点 x 为根的子树中 ...
- Elasticsearch - java客户端连接
写在前面的话:读书破万卷,编码如有神-------------------------------------------------------------------- 最简单的在java客户端连 ...
- 将mnist数据集存储到本地文件
参考文章: http://www.csuldw.com/2016/02/25/2016-02-25-machine-learning-MNIST-dataset/ import numpy as np ...
- win2003服务器装spl2008,打安全补丁后无法进入SQL Server Management Studio
解决方法就是:卸载垃圾的360安全卫士,用windows自带的更新工具更新系统补丁,就好了
- svn 服务器搭建及使用 三
SVN服务器搭建和使用(三) 接下来,试试用TortoiseSVN修改文件,添加文件,删除文件,以及如何解决冲突等. 添加文件 在检出的工作副本中添加一个Readme.txt文本文件,这时候这个文本文 ...
- How to let TVirtualStringTree to display an icon in disabled state?
How to let TVirtualStringTree to display an icon in disabled state? I need to display files in a dir ...
- [js插件]JqueryUI日期插件
引言 之前使用jqueryUi中的弹出框做了一个可拖拽的弹出登录框,也顺便将里面的常用的日期插件和文本框智能提示插件,也学习了一下. 使用方法 首先在项目中引入以下文件: <!-- 日期插件 默 ...
- 前端 fetch 通信
随着前端异步的发展, XHR 这种耦合方式的书写不利于前端异步的 Promise 回调. 而且,写起来也是很复杂. fetch API 本来是在 SW(ServiceWorkers) 中提出的, 不过 ...
- (转)RTMP中FLV流到标准h264、aac的转换
这段时间,工作上的需要,在RTMP上做了flv流到标准h264.AAC的转换,服务器是开源项目CRTMPSERVER,客户端flex编写,视频编码h264,音频编码AAC,现将一些协议相关的东西记录如 ...
- TSL / SSL
参考: http://www.ruanyifeng.com/blog/2014/09/illustration-ssl.html http://www.tuicool.com/articles/IJ3 ...