<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)

    搜索

    •  

    積分與排名

    • 積分 - 155667
    • 排名 - 391

    最新評論


    -- 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 天堂露珠 閱讀(226) 評論(0)  編輯  收藏 所屬分類: Database

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


    網站導航:
     
    主站蜘蛛池模板: 亚洲综合久久成人69| 亚洲AV综合色区无码另类小说| 亚洲日产2021三区在线 | 久久精品成人免费网站| 亚洲欧洲∨国产一区二区三区| 七次郎成人免费线路视频| 国产乱色精品成人免费视频 | 成人毛片免费视频| 在线观看亚洲AV日韩AV| 成人毛片免费网站| 亚洲国产无线乱码在线观看 | 女人张腿给男人桶视频免费版| 亚洲 日韩 色 图网站| 精品久久久久久久免费加勒比| 妇女自拍偷自拍亚洲精品| 亚洲福利视频一区二区| 三上悠亚在线观看免费| 亚洲bt加勒比一区二区| av无码久久久久不卡免费网站| 亚洲欧洲专线一区| 亚洲精品视频免费| 国产精品99精品久久免费| 亚洲男女性高爱潮网站| 免费毛片在线播放| 一个人免费观看视频在线中文 | 成年女人毛片免费播放人| 亚洲av日韩av永久无码电影| 亚洲精品成人在线| 久久福利青草精品资源站免费| 久久久亚洲AV波多野结衣| 午夜爱爱免费视频| 三级黄色在线免费观看| 亚洲a级片在线观看| 亚洲国产精品无码久久久久久曰 | 亚洲av午夜国产精品无码中文字| 在线观看亚洲精品国产| 成人免费福利视频| 一级一片免费视频播放| 亚洲人成综合在线播放| 亚洲高清国产拍精品青青草原| 午夜理伦剧场免费|