zoukankan      html  css  js  c++  java
  • 数据库子查询

    子查询

        一个select中还包含另一个select,其中最里面的select语句称之为子查询

    根据select出现的位置可以将子查询分为以下几类:

    from子查询

    where子查询

    exists子查询

    从select返回的结果,那么子查询又可以分为:

    标量子查询

        查询的结果只有一个值。

    示例:

    需求:查询zhangsan所在的教室

    思路:

        首先,先写最终想得到查询==》教室    

            select room from class ......

        再行,条件==》查询zhangsan

            where id =(select c_id from stu where s_name='zhangsan')

    列子查询

        查询得到的结果,是一个一列多行的数据。

    需求:

        查询班级为php的所有的学生

    select * from stu where c_id =(select id from class where c_name='php');

        查询班级为php和ios的所有的学生

    select * from stu where c_id in (select id from class where c_name = 'php' or c_name='ios');

    示例:

    行子查询

        查询的结果是一行多列。

    需求:查询学生表中,sex为1,age为最大的记录

        select * from stu where (age,sex)=(select max(age),sex from stu where sex=1);

    示例:

    表子查询

        结果是一个表,相当于一个数据源,数据源放到from后

    需求:

        查询每一个班级中年龄最大的学生。

    示例:

    exists子查询

    exists相当于判断

    需求:

        查询php班级中有的学生

  • 相关阅读:
    C#高级特性_Attribute
    C#高级特性_Lambda
    委托(delegate)
    C# 属性、索引
    C#中的interface
    枚举型Enum和结构型Stuct
    javascript学习笔记
    github page 和 hexo 搭建在线博客
    2015/9/22 开通博客园
    phoenix 入门
  • 原文地址:https://www.cnblogs.com/nyxd/p/5359687.html
Copyright © 2011-2022 走看看