Sql 在单个查询中查找总和和平均值
我有一个显示总和和平均数的查询。这个总和有一些复杂的计算。我的问题几乎是这样的:Sql 在单个查询中查找总和和平均值,sql,oracle,Sql,Oracle,我有一个显示总和和平均数的查询。这个总和有一些复杂的计算。我的问题几乎是这样的: SELECT (SELECT a + b - c * d FROM master) AS sum, (SELECT a + b - c * d FROM master) / 5 AS avg FROM master; 如何将总和(我已经计算过)放入一个变量(或其他方式)中,用它来求平均值,从而减少代码 我使用的是Oracle SQL developer。我想您可能想要的是: WITH sum_inf
SELECT (SELECT a + b - c * d FROM master) AS sum,
(SELECT a + b - c * d FROM master) / 5 AS avg
FROM master;
如何将总和(我已经计算过)放入一个变量(或其他方式)中,用它来求平均值,从而减少代码
我使用的是Oracle SQL developer。我想您可能想要的是:
WITH sum_info AS (SELECT id, a + b - c * d total
FROM master)
SELECT t.id,
si.total,
si.total/5 average
FROM test t
INNER JOIN sum_info si ON t.id = si.id;
我假设master.id在这里是唯一的列。如果没有关于实际问题的更多细节(例如样本输入数据和预期输出数据),很难知道这是否真的回答了您的问题。只有您可以帮助我们帮助您……您可以使用以下方法
SELECT m.col as SUM, m.col/5 as AVG
FROM (SELECT (a + b - c * d) col FROM master) m ;
我会用
SELECT sum(term) as sum,
avg(term) as avg
FROM (SELECT (a + b - c * d) AS term FROM master);
查询中的“5”是行数,对吗?如果没有,您可以使用
SELECT sum(term) as sum,
sum(term)/count(*) as avg
FROM (SELECT (a + b - c * d) AS term FROM master);
“这个测试台的目的是什么?”Gaj Jack Sparrow把它寄来还债。这个问题不太可能解决s。
WHERE
子句中有a.id=b.id
,但从未引入名为a
的关系。Oracle SQL Developer是一种通用的SQL工具,可以连接到多个不同的数据库。但是可以公平地假设您使用的是Oracle数据库,那么我不太擅长sql,我只是想用一个例子来表达我的需要。我的意思是用所选的“总和”来求平均数