zoukankan      html  css  js  c++  java
  • Oracle-一对一与左关联

    -- 一对一

    -- 身份证表

    CREATE TABLE idcard (

       idcard_num CHAR(18) PRIMARY KEY,

       name VARCHAR2(20),

       address VARCHAR2(100),

       minzu VARCHAR2(20)

    );

    -- 学生表

    CREATE TABLE stu(

       sno VARCHAR2(10) PRIMARY KEY,

       name VARCHAR2(20),

       idcard_num CHAR(18)

    );

    INSERT INTO idcard(idcard_num, name, address, minzu)

    VALUES

    ('123456789012345678','小芳','珠海南方','汉族');

    INSERT INTO idcard(idcard_num, name, address, minzu)

    VALUES

    ('123456789087654321','小军','珠海东方','傣族');

    commit

    select * from idcard

    insert into stu(sno, name, idcard_num)

    values

    ('001','小芳','123456789012345678');

    insert into stu(sno, name, idcard_num)

    values

    ('002','小军','123456789087654321');

    commit

    select * from idcard;

    select * from stu;

    update stu set name='大芳' where sno='001'

    commit

    select sno,t1.name,t1.idcard_num,address

     from stu t1,idcard t2  

     where t1.idcard_num = t2.idcard_num

     select * from stu

     -- 故意修改身份证号码,让它关联不上

     update stu set idcard_num='123456789012345677' 

     where idcard_num='123456789012345678'

     commit;

     -- 本质上是一个内关联

     -- 关联不上的数据,不显示

     select sno,t1.name,t1.idcard_num,address

     from stu t1,idcard t2  

     where t1.idcard_num = t2.idcard_num

     ----------

     -- 左关联left join

     -- (以左为主,左边关联不上的数据,继续显示)

      select sno,t1.name,t1.idcard_num,address

     from stu t1,idcard t2  

     where t1.idcard_num = t2.idcard_num(+)

     --传统的写法

     select * from stu t1

     left join idcard t2

     on 

       t1.idcard_num = t2.idcard_num

  • 相关阅读:
    Windows的本地时间(LocalTime)、系统时间(SystemTime)、格林威治时间(UTCTime)、文件时间(FileTime)之间的转换
    VS2008驱动开发环境配置
    delete和delete[]的区别
    手动加载NT式驱动(非工具)修改注册表实现
    结构体的内存空间分配原理
    NT式驱动的卸载
    NT式驱动的安装
    struct tm>time() localtime() gmtime()
    64位驱动数字签名
    SQL Server 数据库错误修改
  • 原文地址:https://www.cnblogs.com/sheying/p/8567801.html
Copyright © 2011-2022 走看看