zoukankan      html  css  js  c++  java
  • 基本sql语句--连接查询

    union 联合
     
    union的作用:把两次或多次查询结果合并起来。
     
    典型案例:select good_id,good_name from good where shop_price>5000 or shop_price<20;
                   select good_id,good_name from good where shop_price>5000 union select good_id,good_name from good where shop_price<20;
     
    1.union的要求:两次查询的列数要一致推荐:查询的每一列,相对应的列类型也一样。
     
         例如:select id,sum(num) from (select * from ta union select * from tb) as tmp group by id;
     
    2.多次sql语句取出的列名可以不一致,此时以第一次sql的列名为准。
    3.如果不同的语句中取出的行,有完全相同的值(每个列的值都相同),那么相同的行将会合并(去重复)。
       如果想不去重复,可以加all进行指定。
     
         例如:select * from ta union all select * from tb;
     
    4.如果子句中有order by 或limit 等,需要加“()”进行括起来。推荐放到所有子句之后,即--对最终合并后的结果进行排序。
     
    连接查询
     
    连接查询包含:左连接(left join)、右连接(right join)、内连接(inner join)。
     
    左连接:以左表为准,去右表查找数据,若在右表未找到,则用NULL补齐;(推荐使用左连接,代替右连接)
    右连接:以右表为准,去左表查找数据,若在左表未找到,则用NULL补齐;
    内连接:查询左右表都有的数据,即:不要左右连接中NULL的那部分。
     
    如:A left join B ==== B right join A
  • 相关阅读:
    面试题23:从上往下打印二叉树
    面试题22:栈的压入、弹出序列
    【opencv基础】imwrite函数与图像存储质量
    【c++基础】从json文件提取数据
    【图像处理基础】LBP特征
    【机器学习基础】SVM实现分类识别及参数调优(二)
    【leetcode】14-LongestCommonPrefix
    【leetcode】13-Roman2Integer
    【leetcode】9-PalindromeNumber
    【leetcode】7-ReverseInteger
  • 原文地址:https://www.cnblogs.com/skyline1011/p/5939522.html
Copyright © 2011-2022 走看看