zoukankan      html  css  js  c++  java
  • 子查询

    一。子查询解决什么问题: 一个查询查询不到结果的时候,可以使用子查询来丰富查询的条件

    子查询的格式: 用一个小括号包含,然后在里面写sql语句
     子查询的注意事项:
     1. 一定要有小括号
     2. 一定要注意你的书写格式
     3. 子查询可以放在select,from ,where having,order by 后面
     4. 子查询一定不能放在group by的后面
     5. 子查询和主查询可以不是同一张表,只要子查询的结果在主查询中能用就可以
     5. 子查询中一般都不排序,但是在TOP-N中需要排序
     7. 一般是先执行子查询操作,在执行主查询操作,但是在相关子查询中先执行主查询,在执行子查询
     8. 对于子查询的结果,如果是单行只能用单行操作符,如果是多行,只能用多行操作符
     9. 自查中的null处理

    例:select * from (

    select ename,job,sal from emp
     );

    一定要注意的地方: 子查询不能过多的去嵌套,一般嵌套三层,加多了就影响性能

    对于子查询的结果,如果是单行只能用单行操作符,如果是多行,只能用多行操作符  --返回多行会与单行操作符不匹配

    多行操作符 int not in any all

    例: -- 查询比30号部门员工工资高的员工信息

      select * from emp where sal > any(
      select sal from emp where deptno = 30
      );

    例:查询基层员工

     -- select *
        from emp
        where empno not in(
        select mgr from emp where mgr is not null
        );

  • 相关阅读:
    javascript 去掉 url 中的不可打印字符串
    双链表 哈希 go 实现lFU 缓存算法
    博客园嵌入背景音乐
    博客园嵌入B站视频教程
    基于C++二叉树链表实现同学录信息系统
    C++ 二叉树知识点
    datatable 自定义排序 及 多列排序
    jq 提取字符串中的数字
    wamp下thinkPHP3.2 系统不支持:redis 解决方法
    editable文档
  • 原文地址:https://www.cnblogs.com/savepoint/p/5356588.html
Copyright © 2011-2022 走看看