• 数据库高级查询


    1.联合查询(用的不多)

    select code,name from info

    union

    select code,name from nation

    对行的扩展

    select code,name from nation

    2.连接查询

    select * from info,nation 会形成大量数据,笛卡尔积

    select  * from info,nation where info.nation=nation.code

    select info.code,info.name,info.sex,nation.name,info.birthday from info,nation where info.nation=nation.code

    select info.code,info.name,info.sex,nation.name,info.birthday from info join nation  on info.nation=nation.code

    left join 左连接

    3.子查询(重要)

    外层查询,里层查询,子查询的结果作为父查询的条件使用

    无关子查询

      子查询和父查询没有关系,子查询单独拿出来可以执行

    1.查询民族为“汉族”的所有人员信息

    select * from info where nation=(

    select code from nation where name=‘汉族’)

    2.查询所有厂商是“一汽大众”的汽车信息

    selec * from car where brand in((select brand_code from brand where prod_code in(select prod_code from Productor where prod_name='一汽大众'))

    相关子查询


    查询油耗低于该系列平均油耗的汽车信息
    select * from car where oil<(该系列平均油耗)
    select avg(oil) from car where brand='该系列'

    select * from car a where oil<(select avg(oil) from car b where b.brand=a.brand)

  • 相关阅读:
    LeetCode——打家劫舍问题
    LeetCode——无重叠区间
    LeetCode——岛屿数量
    LeetCode——石子游戏
    LeetCode——最长回文子序列
    LeetCode——高层扔鸡蛋*
    LeetCode——零钱兑换
    LeetCode刷题之BFS和DFS
    没有学历,四步加入谷歌
    坚持编程
  • 原文地址:https://www.cnblogs.com/niushuangmeng/p/8169101.html
Copyright © 2020-2023  润新知