zoukankan      html  css  js  c++  java
  • 多值检测

    “公司要为年龄为23岁、25岁和28岁的员工发福利,请将他们的年龄、工号和姓名检索出来”,要完成这样的功能,我们可以使用OR语句来连接多个等于判断。SQL语句如下:

    
    SELECT FAge,FNumber,FName FROM T_Employee WHERE FAge=23 OR FAge=25 OR FAge=28
    

    执行完毕我们就能在输出结果中看到下面的执行结果:

    这里要检索的年龄值是很少的,只有3个,如果要求我们“检索年龄为21岁、22岁、25岁、28岁、30岁、33岁、35岁、38岁、46岁的员工信息”,那么我们就要用OR连接九个等于判断:

    
    SELECT FAge,FNumber,FName 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我们只要指定要匹配的数据集合就可以了,使用方法为“IN (值1,值2,值3……)”。要完成“公司要为年龄为23岁、25岁和28岁的员工发福利,请将他们的年龄、工号和姓名检索出来”这样功能的话,可以使用下面的SQL语句:

    
    SELECT FAge,FNumber,FName FROM T_Employee WHERE FAge IN (23,25,28)
    

    执行完毕我们就能在输出结果中看到下面的执行结果:

    可以看到执行结果和使用OR语句来连接多个等于判断的方式是一样的。

    使用IN我们还可以让字段与其他表中的值进行匹配,比如“查找所有姓名在迟到记录表中的员工信息”,要实现这样的功能就需要IN来搭配子查询来使用。

  • 相关阅读:
    PHP操作二进制字节数据
    Linux端口转发-rinted工具部署、配置、使用
    Netty学习(八)-Netty的心跳机制
    Navicat Premium 12破解方法
    App界面设计规范-字体规范
    PHP 扩展开发之Zephir
    rinetd 一个linux下的端口转发工具
    windows node版本管理工具nvm
    vue cli 常见问题汇总
    监听微信返回
  • 原文地址:https://www.cnblogs.com/yuyu666/p/9820054.html
Copyright © 2011-2022 走看看