简体   繁体   English

Oracle SQL查询到GROUP BY并减去?

[英]Oracle SQL query to GROUP BY and subtract?

如果我有四个列:表中的A,B,C和D,Oracle SQL查询将如何按列D进行分组,然后在每个分组中选择C ='c'的行,并为那些选定的行返回值B减去A?

SELECT Aggfunction(B - A), D FROM TABLENAME WHERE C='c' GROUP BY D

Replace Aggfunction with aggregate function you want eg SUM or AVG. 用所需的聚合函数(例如SUM或AVG)替换Aggfunction。 You can only include ungrouped columns from a grouped sql query result set in an aggregate function (which makes sense because you only get one record out per group so have to accumulate the ungrouped columns in some way in order to represent a value per group) 您只能在聚合函数中包括来自已分组的sql查询结果集中的未分组的列(这很有意义,因为每个组仅获得一条记录,因此必须以某种方式累积未分组的列才能表示每个组的值)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM