怎么在两张表里查询存在的记录。例如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 java如何提取出pdf里的文字?
- ¥100 求三轴之间相互配合画圆以及直线的算法
- ¥100 c语言,请帮蒟蒻写一个题的范例作参考
- ¥15 名为“Product”的列已属于此 DataTable
- ¥15 安卓adb backup备份应用数据失败
- ¥15 eclipse运行项目时遇到的问题
- ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
- ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
- ¥15 自己瞎改改,结果现在又运行不了了
- ¥15 链式存储应该如何解决