SQL 3. 高级数据过滤 - 4 多值检测
来源:互联网 发布:域名投资技巧 编辑:程序博客网 时间:2024/05/23 18:59
例1:“公司要为年龄为23岁、25岁和28岁的员工发福利,请将他们的年龄、工号和姓名检索出来”,
要完成这样的功能,我们可以使用OR语句来连接多个等于判断。SQL语句如下:
SELECT FAge, FNumber, FName FROM T_Employee WHERE FAge=23 or FAge=25 or FAge=28
不过,如果要求我们“检索年龄为21岁、22岁、25岁、28岁、30岁、33岁、35岁、38岁、46岁的员工信息” 那么我们就用OR连接9个等于判断,SQL语句如下:
SELECT * FROM T_Employee where Fage = 21 or Fage = 22 or Fage =25 or Fage = 28 or Fage = 30 or Fage = 33 or Fage = 35 or Fage = 38 or Fage = 46
这不仅写起来非常麻烦,而且维护的难度也相当大,一部小新就会造成数据错误。为了解决多个离散值的匹配问题,SQL提供了IN 语句,我们只需指定要匹配的数据集合就可以了,使用方法为"IN(值1, 值2,值3)"
要完成例1的的话,可以用下面的SQL语句:
SELECT FAge, FNumber, FName FROM T_Employee WHERE FAge IN (23,25,28)
+------+----------+-------+
| Fage | fnumber | fname |
+------+----------+-------+
| 25 | DEV001 | Tom |
| 28 | DEV002 | Jerry |
| 23 | HR001 | Jane |
| 25 | HR002 | Tina |
| 28 | IT001 | Smith |
| 25 | SALES001 | Timmy |
+------+----------+-------+
我们还可以使用IN 让字段与其他表中的值进行匹配,比如“查找所有姓名中迟到记录表中的员工的信息”,要实现这样的功能就需要
IN 搭配子查询来使用,关于这一点我们将在后面的章节中介绍。
- SQL 3. 高级数据过滤 - 4 多值检测
- SQL 3.高级数据过滤 - 2 空值检测
- SQL 3. 高级数据过滤 - 5 范围值检测
- SQL高级数据过滤
- SQL 3.高级数据过滤 - 1 通配符过滤
- SQL 3. 高级数据过滤 - 3 反义运算符
- 读书笔记--SQL必知必会05--高级数据过滤
- SQL高级过滤查询
- SQL必知必会 笔记 第五章 高级过滤数据
- SQL---DML---WHERE过滤数据のAND,OR,IN,NOT的高级过滤
- 第五章 高级数据过滤
- 第五课 高级数据过滤
- sql数据过滤
- SQL必知必会--过滤数据
- SQL过滤数据
- SQL 过滤数据
- 数据库高级数据过滤之SQL操作符与SELECT子句
- Mysql必知必会(笔记)【高级数据过滤、通配符进行过滤】
- 一个非常精妙的SQL语句
- 用dom4j如何使用Schema的xsd文件验证xml文件的合法性!
- C程序设计
- 单项链表的建立
- Android移植: wifi设计原理(源码分析)
- SQL 3. 高级数据过滤 - 4 多值检测
- 【mysql】MySQL 5.5 新特性:Oracle 收购 Sun 后的首次大幅改进
- php hash 算法大全
- sql计算星期几
- DDSS
- 《TCP/IP协议族》(第4版)
- C#利用QQ游戏破解QQ密码
- IDataParameter[]怎么创建
- trac 安装步骤