zoukankan      html  css  js  c++  java
  • 项目实例——多表关联查询判断A的字段是否在B中,在显示该字段值,不在显示空;B的字段是否在C中,在显示该字段值,不在显示空。

    1、需求:

    (1)三张表A、B、C  三个表id相同,如果A表中的name在B表中的bname中显示aname值,否则显示空;如果C表中的addr在B表中的tel显示addr,否则显示空

    2、实现方式

    (1)用decode函数

    select 
    a.id,a.name,b.bname,b.tel,c.addr ,
    decode(a.name,b.bname,a.name,null) as aname,
    decode(c.addr,b.tel,c.addr,null) as addr
    from A a,B b,C c where  a.id=b.bid and b.bid=c.cid and a.id=c.cid 

    效果图:

     (2)用case....when....实现

    select 
    a.id,a.name,b.bname,c.addr ,
    (case when a.name in (select bname from b) then a.name 
    else '' end
    ) 
    from A a,B b,C c where  a.id=b.bid and b.bid=c.cid and a.id=c.cid 

    效果图:

  • 相关阅读:
    nodeJs-querystring 模块
    nodeJs-process对象
    nodejs-Path模块
    nodejs-os模块
    nodejs-CommonJS规范
    nodejs-Events模块
    nodejs-Http模块
    nodejs-Cluster模块
    转:AOP与JAVA动态代理
    转:jdk动态代理实现
  • 原文地址:https://www.cnblogs.com/xinxin1994/p/6094325.html
Copyright © 2011-2022 走看看