当我有一个联接表时,如何查询总数
|
哈o
我有一个连接表,说的是tableA和tableB。 tableA有一个称为Amount的列。 tableB有一列称为refID。当refID具有相同的值时,我想总计Amount列。我在查询中使用了SUM,但它抛出了一个错误:
ORA-30483: window functions are not allowed here
30483. 00000 - \"window functions are not allowed here\"
*Cause: Window functions are allowed only in the SELECT list of a query.
And, window function cannot be an argument to another window or group
function.
这是我的查询供您参考:
select *
from (
select SUM(A.Amount), B.refId, Rank() over (partition by B.refID order by B.id desc) as ranking
from table A
left outer join table B on A.refID = B.refID
)
where ranking=1;
我可以知道是否还有其他解决方案可以让我求和?
谢谢 @!
没有找到相关结果
已邀请:
5 个回复
距相镭
掏得透垦滩
博沮富教全
诞胃
死搭胯
如果我理解您的问题,则仅当您拥有与TABLE_A.REFID匹配的TABLE_B.REFID时才需要结果,因此使用INNER JOIN是合适的。 分享并享受。