sql - Oracle Sql 在匹配存在时检索总和
问题描述
需要 Sql 帮助。
Totalcount=Employees + Count 列名是这样的。这是我们试图加入的两个随机表。Imp:有可能 - Table1 中存在的内容可能不存在于 Table2 中。此外,table2 中存在的内容可能在 Table1 中不存在。因此,如果两者都存在,则需要总和,如果不是单个值
解决方案
您可以使用union all
和聚合:
select entity, sum(cnt) total_count
from (
select entity, cnt from table2
union all select company, employees from table1
) t
group by entity
order by entity
为了使其正常工作,您需要两个表中的列具有相同的数据类型,即table2.entity
应该具有与table1.company'
(以及table2.cnt
和table1.employees
)相同的数据类型。如果数据类型不匹配,则必须将列显式转换为调整。
推荐阅读
- google-sheets - 曾经在 Google 表格中工作的条件格式,现在不再适用
- php - 用 OPENSSL_ENCRYPT 替换 ECP 模式下的 MCRYPT_RIJNDAEL_128
- python - pandas read_csv 有没有办法像处理丢失数据一样处理错误数据?
- tradingview-api - 如何为 TradingView 的图表库实现 save() 和 load()
- javascript - 如何从此 RSS 获取图片帖子
- python - 如何使用元数据来预测视图。我以前没有使用过元数据,有人可以指导我如何开始
- dax - DAX 查询对列进行分组,获取日期列最新的另一列的平均值
- sql - Oracle正则表达式提取第一对<和>括号之间的字符串
- r - 从 osmar 对象列表中删除空的 osmar 对象
- macos - 在 mac os 上使用 ffmpeg 音频录制的音频点击/噼啪声