zoukankan      html  css  js  c++  java
  • 五、JOIN

    一、inner join:在表中存在至少一个匹配时,INNER JOIN 关键字返回行。等同join

     

    SELECT SNAME,CNO,DEGREE
    FROM student INNER JOIN score
    on student.SNO=score.SNO
    ORDER BY SNAME

    二、left join从左表student那里返回所有的行,即使在右表score中没有匹配的行。

    SELECT SNAME,CNO,DEGREE
    FROM student LEFT JOIN score
    on student.SNO=score.SNO
    ORDER BY SNAME

    三、right join:从右表 score 那里返回所有的行,即使在左表student中没有匹配的行

    SELECT SNAME,CNO,DEGREE
    FROM student right JOIN score
    on student.SNO=score.SNO
    ORDER BY SNAME

    四、full join:只要其中某个表存在匹配,FULL JOIN 关键字就会返回行。MySQL不支持full join,可通过 left join+union+right join实现

    SELECT SNAME,CNO,DEGREE FROM student LEFT JOIN score on student.SNO=score.SNO
    UNION
    SELECT SNAME,CNO,DEGREE FROM student RIGHT JOIN score on student.SNO=score.SNO ORDER BY SNAME

    UNION:

    UNION 操作符用于合并两个或多个 SELECT 语句的结果集。

    请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同

    注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL

  • 相关阅读:
    mysql共享锁与排他锁
    脏读、幻读、不可重复读和丢失更新
    数据库事务原理及并发、死锁
    漫谈php框架之中间件
    [PHP]用户登陆中间件
    POJ 1753 Flip Game (状态压缩 bfs+位运算)
    CSU
    CSU
    CodeForces
    CSU 1726: 你经历过绝望吗?两次!(bfs+优先队列)
  • 原文地址:https://www.cnblogs.com/soberkkk/p/12564085.html
Copyright © 2011-2022 走看看