zoukankan      html  css  js  c++  java
  • oracle中sql语句小练习(使用连接查询)

    假设A(m,n,p),B(m,n,p)

    --1.A表中有某一项m而B表中没有

    使用左连接查询:
    select a.* from A a left join B b on a.m=b.m where b.m is null;

    左连接查询公共部分以及A表中的全部数据,B表中该列值为null的数据即为A中存在而B中不存在的结果。

    --2.A表中没有某一项m而B表中有

    可改为使用右连接查询:

    select b.* from A a right join B b on a.m=b.m where a.m is null;

    与上一条类似,只是这次判断A表中不存在而B表中存在的结果,右连接查询公共部分以及B表中的全部数据。

    --3.查询A表与B表中某一项m一致,而有其它项不一致的情况,其它几项只要有一项满足不一致则输出查询结果,sql语句如下:

    select a.m,a.n,a.p,b.m,b.n,b.p from A a join B b on a.m=b.m where a.n<>b.n or a.p<>b.p;

    使用了join...on...的连接查询,在此语句中判断不相等的语法为<>,在这里也可写为!=,此查询为查询两个表共同的部分。

  • 相关阅读:
    散列函数之单散列算法
    NET 使用 RabbitMQ
    leetCode
    Swift 1
    C#并发集合
    多进程与多线程1
    开发编译器
    APUE1
    微服务架构
    ExceptionHandlerMiddleware中间件如何呈现“定制化错误页面”
  • 原文地址:https://www.cnblogs.com/jokerr/p/11362854.html
Copyright © 2011-2022 走看看