<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 117  文章 - 72  trackbacks - 0

    聲明:原創作品(標有[原]字樣)轉載時請注明出處,謝謝。

    常用鏈接

    常用設置
    常用軟件
    常用命令
     

    訂閱

    訂閱

    留言簿(7)

    隨筆分類(130)

    隨筆檔案(123)

    搜索

    •  

    積分與排名

    • 積分 - 156615
    • 排名 - 390

    最新評論


    -- Author:Winty(天堂露珠)
    -- Date:2009-6-14
    use test;
    -- 創建表
    CREATE TABLE Student(
        sid VARCHAR(20),
        sname VARCHAR(50),
        cid VARCHAR(20),
        PRIMARY KEY(sid)
    );

    CREATE TABLE Course(
        cid VARCHAR(20),
        cname VARCHAR(50),
        PRIMARY KEY(cid)
    );

    INSERT INTO Student values('S001','張三','C100');
    INSERT INTO Student values('S002','李四','C200');
    INSERT INTO Student values('S003','王五','C300');
    -- C000是Course表中沒有的
    INSERT INTO Student values('S004','趙六','C000');

    INSERT INTO Course values('C100','操作系統');
    INSERT INTO Course values('C200','編譯原理');
    INSERT INTO Course values('C300','網絡安全');
    -- C400是Student表中沒有引用的
    INSERT INTO Course values('C400','軟件技術');


    -- 笛卡爾積
    SELECT * FROM Student , Course;
    /*
    結果
    +------+-------+------+------+----------+
    | sid  | sname | cid  | cid  | cname    |
    +------+-------+------+------+----------+
    | S001 | 張三  | C100 | C100 | 操作系統 |
    | S002 | 李四  | C200 | C100 | 操作系統 |
    | S003 | 王五  | C300 | C100 | 操作系統 |
    | S004 | 趙六  | C000 | C100 | 操作系統 |
    | S001 | 張三  | C100 | C200 | 編譯原理 |
    | S002 | 李四  | C200 | C200 | 編譯原理 |
    | S003 | 王五  | C300 | C200 | 編譯原理 |
    | S004 | 趙六  | C000 | C200 | 編譯原理 |
    | S001 | 張三  | C100 | C300 | 網絡安全 |
    | S002 | 李四  | C200 | C300 | 網絡安全 |
    | S003 | 王五  | C300 | C300 | 網絡安全 |
    | S004 | 趙六  | C000 | C300 | 網絡安全 |
    | S001 | 張三  | C100 | C400 | 軟件技術 |
    | S002 | 李四  | C200 | C400 | 軟件技術 |
    | S003 | 王五  | C300 | C400 | 軟件技術 |
    | S004 | 趙六  | C000 | C400 | 軟件技術 |
    +------+-------+------+------+----------+
    */


    -- 自然連接:NATURAL JOIN
    SELECT * FROM Student NATURAL JOIN Course;
    /*
    結果:
    +------+------+-------+----------+
    | cid  | sid  | sname | cname    |
    +------+------+-------+----------+
    | C100 | S001 | 張三  | 操作系統 |
    | C200 | S002 | 李四  | 編譯原理 |
    | C300 | S003 | 王五  | 網絡安全 |
    +------+------+-------+----------+
    */


    -- 內連接:INNER JOIN
    SELECT * FROM Student s INNER JOIN Course c ON s.cid=c.cid;
    /*
    結果:
    +------+------+-------+----------+
    | cid  | sid  | sname | cname    |
    +------+------+-------+----------+
    | C100 | S001 | 張三  | 操作系統 |
    | C200 | S002 | 李四  | 編譯原理 |
    | C300 | S003 | 王五  | 網絡安全 |
    +------+------+-------+----------+
    */

    -- 與使用INNER JOIN結果類似,但包含重復列(cid)
    SELECT * FROM Student s , Course c WHERE s.cid=c.cid;
    /*
    結果:
    +------+-------+------+------+----------+
    | sid  | sname | cid  | cid  | cname    |
    +------+-------+------+------+----------+
    | S001 | 張三  | C100 | C100 | 操作系統 |
    | S002 | 李四  | C200 | C200 | 編譯原理 |
    | S003 | 王五  | C300 | C300 | 網絡安全 |
    +------+-------+------+------+----------+
    */


    -- 左外連接: LEFT OUTER JOIN
    SELECT * FROM Student AS s LEFT JOIN Course AS c ON s.cid=c.cid;
    /*
    結果:
    +------+-------+------+------+----------+
    | sid  | sname | cid  | cid  | cname    |
    +------+-------+------+------+----------+
    | S001 | 張三  | C100 | C100 | 操作系統 |
    | S002 | 李四  | C200 | C200 | 編譯原理 |
    | S003 | 王五  | C300 | C300 | 網絡安全 |
    | S004 | 趙六  | C000 | NULL | NULL     |
    +------+-------+------+------+----------+
    */


    -- 右外連接: RIGHT OUTER JOIN
    SELECT * FROM Student s RIGHT JOIN Course c ON s.cid=c.cid;
    /*
    結果:
    +------+-------+------+------+----------+
    | sid  | sname | cid  | cid  | cname    |
    +------+-------+------+------+----------+
    | S001 | 張三  | C100 | C100 | 操作系統 |
    | S002 | 李四  | C200 | C200 | 編譯原理 |
    | S003 | 王五  | C300 | C300 | 網絡安全 |
    | NULL | NULL  | NULL | C400 | 軟件技術 |
    +------+-------+------+------+----------+
    */


    -- FULL OUTER JOIN:用左右連接實現
    SELECT * FROM Student AS s LEFT JOIN Course AS c ON s.cid=c.cid
    UNION
    SELECT * FROM Student s RIGHT JOIN Course c ON s.cid=c.cid;
    /*
    結果
    +------+-------+------+------+----------+
    | sid  | sname | cid  | cid  | cname    |
    +------+-------+------+------+----------+
    | S001 | 張三  | C100 | C100 | 操作系統 |
    | S002 | 李四  | C200 | C200 | 編譯原理 |
    | S003 | 王五  | C300 | C300 | 網絡安全 |
    | S004 | 趙六  | C000 | NULL | NULL     |
    | NULL | NULL  | NULL | C400 | 軟件技術 |
    +------+-------+------+------+----------+
    */

    -- 交叉連接:CROSS JOIN
    -- 與SELECT * FROM Student
    SELECT * FROM Student CROSS JOIN Course;
    /*
    結果
    +------+-------+------+------+----------+
    | sid  | sname | cid  | cid  | cname    |
    +------+-------+------+------+----------+
    | S001 | 張三  | C100 | C100 | 操作系統 |
    | S002 | 李四  | C200 | C100 | 操作系統 |
    | S003 | 王五  | C300 | C100 | 操作系統 |
    | S004 | 趙六  | C000 | C100 | 操作系統 |
    | S001 | 張三  | C100 | C200 | 編譯原理 |
    | S002 | 李四  | C200 | C200 | 編譯原理 |
    | S003 | 王五  | C300 | C200 | 編譯原理 |
    | S004 | 趙六  | C000 | C200 | 編譯原理 |
    | S001 | 張三  | C100 | C300 | 網絡安全 |
    | S002 | 李四  | C200 | C300 | 網絡安全 |
    | S003 | 王五  | C300 | C300 | 網絡安全 |
    | S004 | 趙六  | C000 | C300 | 網絡安全 |
    | S001 | 張三  | C100 | C400 | 軟件技術 |
    | S002 | 李四  | C200 | C400 | 軟件技術 |
    | S003 | 王五  | C300 | C400 | 軟件技術 |
    | S004 | 趙六  | C000 | C400 | 軟件技術 |
    +------+-------+------+------+----------+
    */


    -- UNION
    SELECT * FROM Student WHERE sid='S001'
    UNION
    SELECT * FROM Student WHERE sid='S002';
    -- 與此等價
    SELECT * FROM Student WHERE sid='S001' OR sid='S002';
    /*
    結果
    +------+-------+------+
    | sid  | sname | cid  |
    +------+-------+------+
    | S001 | 張三  | C100 |
    | S002 | 李四  | C200 |
    +------+-------+------+
    */

    posted on 2009-06-17 22:31 天堂露珠 閱讀(231) 評論(0)  編輯  收藏 所屬分類: Database

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 最新国产AV无码专区亚洲| 久久国产乱子伦精品免费午夜| 久久青草免费91线频观看不卡| 久久精品国产亚洲7777| 乱人伦中文视频在线观看免费| 精品国产麻豆免费网站| 亚洲乱亚洲乱妇24p| 好爽好紧好大的免费视频国产| 国产精品亚洲AV三区| 亚洲国产精品一区二区第一页免| 一级看片免费视频| 在线观看亚洲精品福利片| 久久精品国产免费一区| 亚洲酒色1314狠狠做| 欧洲乱码伦视频免费| 亚洲AV无码一区二区大桥未久| 可以免费观看的一级毛片| 中国黄色免费网站| 亚洲色四在线视频观看| 日韩国产免费一区二区三区| 亚洲精品一卡2卡3卡四卡乱码| 国产一区视频在线免费观看| 久久久精品视频免费观看 | 免费的黄色的网站| 亚洲精品国产精品乱码视色 | a级在线免费观看| 久久亚洲日韩精品一区二区三区| 台湾一级毛片永久免费| 美女被免费网站视频在线| 国产亚洲福利精品一区| av无码免费一区二区三区| 国产产在线精品亚洲AAVV| 亚洲国产精品无码久久SM| 在线看片无码永久免费视频| 色费女人18女人毛片免费视频| 国产午夜亚洲精品国产成人小说| 91嫩草免费国产永久入口| 国产亚洲精品2021自在线| 亚洲av无码片在线播放| 最新69国产成人精品免费视频动漫| 亚洲免费日韩无码系列|