zoukankan      html  css  js  c++  java
  • 数据库之子查询一(单行,多行,多列子查询)

    子查询先执行括号里面的查询语句,然后将返回值赋值给外面的语句,再次进行查询。
    根据查询结果的行数,将其分为单行子查询,多行子查询,多列子查询

    一、单行子查询

        select 字段1,字段2.........
        from 表名
        where 字段3>(<,=,<=,>=,!=,<>)
        (
        select 字段3
        from 表名
        where........
        )
        其中可以使用各种比较运算符(>,<,=,<=,>=,!=,<>)
    二、多行子查询
        1.in关键字
        select 字段1,字段2.........
        from 表名
        where 字段3 in
        (
        select 字段3
        from 表名
        where........
        )
        此时会列出所有和括号里面的查询语句的返回值相同的记录    
        2.any关键字
        select 字段1,字段2.........
        from 表名
        where 字段3 (>,<,=,<=,>=,!=,<>)any
        (
        select 字段3
        from 表名
        where........
        )
        这里的any需要和比较运算符共用
        >any大于查询出来的任一返回值(大于最小值)
        <any小于查询出来的任一返回值(小于最大值)
        =any和in相同
        <>any和!=any相同,即返回不等于查询任一值
        ..........
        3.all关键字
        select 字段1,字段2.........
        from 表名
        where 字段3 (>,<,=,<=,>=,!=,<>)all
        (
        select 字段3
        from 表名
        where........
        )
        >all大于查询出来的最大返回值(大于最大值)
        <ally小于查询出来的最小返回值(小于最小值)
        =all等于查询结果中的所有值
        <>和!=不等于查询结果中的所有值
        特别注意:等于号的两种情况很复杂,搞不清楚,标记
        多列子查询:
        多列子查询即使用两个以及多个字段条件进行查询
        格式:
        select 字段1,字段2,字段3.........
        from 表1
        where (dept,profession)=
        (
        select dept,profession
        from 表1
        where.........
        )
  • 相关阅读:
    Ubuntu上VNC 配置
    Ubuntu远程桌面xrdp方法
    sudo 免密码
    Ubuntu 12.04 root默认密码? 如何使用root登录?
    DNS 和 IPv6 配置攻略
    计算机专业学习浅谈
    [图像]张正友论文翻译(2)
    [图像]张正友论文翻译(1)
    [图像]用Matlab在图像上画矩形框
    word如何修改尾注
  • 原文地址:https://www.cnblogs.com/SoulReaper/p/3309791.html
Copyright © 2011-2022 走看看