zoukankan      html  css  js  c++  java
  • 笔试复习题《三》

    一、数据库知识

    1,left join 、right join

    例: 表A记录如下:
    ID Num
    1 a20050111
    2 a20050112
    3 a20050113
    4 a20050114
    5 a20050115
    表B记录如下:
    ID Name
    1 2006032401
    2 2006032402
    3 2006032403
    4 2006032404
    8 2006032408
    语句:select * from A left join B on A.ID = B.ID;
    结果如下:
    ID Num ID Name
    1 a20050111 1 2006032401
    2 a20050112 2 2006032402
    3 a20050113 3 2006032403
    4 a20050114 4 2006032404
    5 a20050115 NULL NULL
    (所影响的行数为 5 行)

     

    left join是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的。换句话说,左表(A)的记录将会全部表示出来,而右表(B)只会显示符合搜索条件的记录(例子中为: A.aID = B.bID)。B表记录不足的地方均为NULL。
     
    SQL语句:select * from A right join B on A.aID = B.bID;
    结果如下:
    aID aNum bID bName
    1 a20050111 1 2006032401
    2 a20050112 2 2006032402
    3 a20050113 3 2006032403
    4 a20050114 4 2006032404
    NULL NULL 8 2006032408
    (所影响的行数为 5 行)
    结果说明:
    right join是以B表的记录为基础的,A可以看成左表,B可以看成右表,right join是以右表为准的。换句话说,右表(B)的记录将会全部表示出来,而左表(A)只会显示符合搜索条件的记录(例子中为: A.aID = B.bID)。A表记录不足的地方均为NULL。
     
    SQL语句:select * from A inner join B on A.aID = B.bID;
    结果如下:
    aID aNum bID bName
    1 a20050111 1 2006032401
    2 a20050112 2 2006032402
    3 a20050113 3 2006032403
    4 a20050114 4 2006032404
    (所影响的行数为 5 行)
    结果说明:
    inner join是只显示右表(B)和左表(A)都符合搜索条件的记录(例子中为: A.aID = B.bID)。
  • 相关阅读:
    使用hadoop平台进行小型网站日志分析
    flume分布式日志收集系统操作
    map-reduce任务的执行流程
    linux设置定制器自动执行任务
    pig笔记
    hive操作记录
    hbase集群安装和shell操作
    Spark Streaming揭秘 Day24 Transformation和action图解
    Spark Streaming揭秘 Day23 启动关闭源码图解
    Spark Streaming揭秘 Day22 架构源码图解
  • 原文地址:https://www.cnblogs.com/abc8023/p/3975457.html
Copyright © 2011-2022 走看看