zoukankan      html  css  js  c++  java
  • SQL Server之内连接 左连接 右连接 全连接 交叉连接

     SELECT * FROM Table_A
     GO
     SELECT * FROM Table_B
     GO
     
     --内连接
     SELECT a.*, b.* FROM Table_A a JOIN Table_B b ON a.ID = b.ID
     SELECT a.*, b.* FROM Table_A a INNER JOIN Table_B b ON a.ID = b.ID
     GO
     
     --内连接等价直接多表from的形式
     SELECT a.*, b.* FROM Table_A a INNER JOIN Table_B b ON a.ID = b.ID
     SELECT a.*, b.* FROM Table_A a, Table_B b WHERE a.ID = b.ID
     
     --左连接
     SELECT a.*, b.* FROM Table_A a LEFT JOIN Table_B b ON a.ID = b.ID
     SELECT a.*, b.* FROM Table_A a LEFT OUTER JOIN Table_B b ON a.ID = b.ID
     GO
     
     --右连接
     SELECT a.*, b.* FROM Table_A a RIGHT JOIN Table_B b ON a.ID = b.ID
     SELECT a.*, b.* FROM Table_A a RIGHT OUTER JOIN Table_B b ON a.ID = b.ID
     
     --A左连接B 等价于 B右连接A
     SELECT a.*, b.* FROM Table_A a LEFT JOIN Table_B b ON a.ID = b.ID
     SELECT a.*, b.* FROM Table_B b RIGHT JOIN Table_A a ON a.ID = b.ID
     
     --全连接
     SELECT a.*, b.* FROM Table_A a FULL JOIN Table_B b ON a.ID = b.ID
     SELECT a.*, b.* FROM Table_A a FULL OUTER JOIN Table_B b ON a.ID = b.ID
     
     --没有 WHERE 子句的交叉联接将产生所涉及的表的笛卡尔积。
     SELECT a.*, b.* FROM Table_A a CROSS JOIN Table_B b 
     
     --如果添加了 WHERE 子句,则交叉联接的行为将与内部联接行为相似
     SELECT a.*, b.* FROM Table_A a CROSS JOIN Table_B b WHERE  a.ID = b.ID
     SELECT a.*, b.* FROM Table_A a INNER JOIN Table_B b ON a.ID = b.ID
  • 相关阅读:
    Python基础
    pip install psycopg2出现python setup.py egg_info failed with error code 1 in /tmp/pip-build-YtLeN3/psycopg2错误处理
    Python基础
    C语言基础
    benchmarks
    用 MuGo 搭建 Go Engine 在 KGS 对战
    GPU
    linux 杀掉僵尸进程 (zombie process, defunct)
    CMakeLists.txt 语法
    软件列表(按字母排序)
  • 原文地址:https://www.cnblogs.com/zhuyongblogs/p/5176959.html
Copyright © 2011-2022 走看看