• TSQL之JOIN(连接)彻底理解


    T-SQL之JOIN彻底理解

    本文不解释,欢迎提问解答,谢谢。直接上代码:

    --测试数据建立
    Create TABLE JOIN_TEST(
    COLA INT,
    COLB INT
    )
     
    GO
    INSERT INTO JOIN_TEST
    SELECT 1,1
     
    INSERT INTO JOIN_TEST
    SELECT 1,1
     
    GO
    --测试数据建立完毕
     
    SELECT * FROM JOIN_TEST
    /*
     
    COLA        COLB
    ----------- -----------
    1           1
    1           1
     
    (2 行受影响)
    */
     
     
    SELECT * FROM JOIN_TEST A  CROSS JOIN JOIN_TEST B
    /*
    COLA        COLB        COLA        COLB
    ----------- ----------- ----------- -----------
    1           1           1           1
    1           1           1           1
    1           1           1           1
    1           1           1           1
     
    (4 行受影响)
     
    */
     
     
    SELECT * FROM JOIN_TEST A  INNER JOIN  JOIN_TEST B ON A.COLA=B.COLA
    /*
    COLA        COLB        COLA        COLB
    ----------- ----------- ----------- -----------
    1           1           1           1
    1           1           1           1
    1           1           1           1
    1           1           1           1
    (4 行受影响)
     
    */
     
     
    SELECT * FROM JOIN_TEST A  LEFT JOIN  JOIN_TEST B ON A.COLA=B.COLA
    /*
    COLA        COLB        COLA        COLB
    ----------- ----------- ----------- -----------
    1           1           1           1
    1           1           1           1
    1           1           1           1
    1           1           1           1
    (4 行受影响)
     
    */
     
    SELECT * FROM JOIN_TEST A  LEFT JOIN  JOIN_TEST B ON A.COLA=B.COLA AND A.COLA<>1
    /*
    COLA        COLB        COLA        COLB
    ----------- ----------- ----------- -----------
    1           1           NULL        NULL
    1           1           NULL        NULL
    (2 行受影响)
    */
     
    SELECT * FROM JOIN_TEST A  LEFT JOIN  JOIN_TEST B ON A.COLA=B.COLA WHERE A.COLA<>1
    /*
    COLA        COLB        COLA        COLB
    ----------- ----------- ----------- -----------
     
    (0 行受影响)
    */
     
    SELECT * FROM JOIN_TEST A  FULL JOIN  JOIN_TEST B ON A.COLA=B.COLA AND A.COLA<>1
    /*
    COLA        COLB        COLA        COLB
    ----------- ----------- ----------- -----------
    1           1           NULL        NULL
    1           1           NULL        NULL
    NULL        NULL        1           1
    NULL        NULL        1           1
    */
     
    SELECT * FROM JOIN_TEST A  FULL JOIN  JOIN_TEST B ON A.COLA=B.COLA where A.COLA<>1
    /*
    COLA        COLB        COLA        COLB
    ----------- ----------- ----------- -----------
     
    (0 行受影响)
    */
  • 相关阅读:
    SQL GUID和自增列做主键的优缺点
    php 一维数组去重
    php + crontab 执行定时任务
    PHP内置函数生成随机数的方法汇总
    PHP替换回车换行的三种方法
    Yii2查询之where条件拼装
    yii2 使用阿里大鱼短信
    javascript对数据处理
    Vue 404页面处理
    vue 中view层中方法的使用
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2478551.html
Copyright © 2020-2023  润新知