怎么在两张表里查询存在的记录。例如A表有 id 和 name两个字段,B表也有id和name两个字段。怎么做到,先去查询A表id对应的name,如果A表的name为空 就去B表查id对应的name。B表是肯定有数据的,A表的name不一定有数据
3条回答 默认 最新
- LBJ_KING_JAMES 2022-08-08 11:47关注
今天做报表的时候,客户提了一个需求,如果补录表没数据,就从系统出,补录标有数据则从补录表出,但是集市同事请假了,需求又着急,我只能直接写sql,利用full outer join 解决这个问题。
select nvl(a.column,b.column) from a full outer join b on 1=1
这里可以先查下
select * from a full outer join b on 1=1
会发现如果A表的数据和B表的数据行数不同,则会将数据少的表数量匹配到数据量大的表,最后再加一个全局的group by 去重就好了
解决 1无用
悬赏问题
- ¥15 【提问】基于Invest的水源涵养
- ¥20 微信网友居然可以通过vx号找到我绑的手机号
- ¥15 寻一个支付宝扫码远程授权登录的软件助手app
- ¥15 解riccati方程组
- ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
- ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
- ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
- ¥50 树莓派安卓APK系统签名
- ¥65 汇编语言除法溢出问题
- ¥15 Visual Studio问题