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来搭配子查询来使用。

  • 相关阅读:
    18、【opencv入门】形态学图像处理(一):开运算、闭运算、形态学梯度、顶帽、黑帽合辑
    17、【opencv入门】形态学图像处理(一):膨胀与腐蚀
    16、【opencv入门】创建Trackbar & 图像对比度、亮度值调整
    c++ 售货员的难题
    c++ 火柴棒等式
    c++ 素数圈
    c++ 分解数
    c++ 走迷宫
    c++ 二叉树遍历
    c++ n皇后问题
  • 原文地址:https://www.cnblogs.com/yuyu666/p/9820054.html
Copyright © 2011-2022 走看看