Sql 如何从两个不同的表中选择两列的差异并计算百分比
我需要在最终结果中列出四列。收入、成本、利润和利润占收入的百分比。我已经从两个不同的表中选择了收入和成本,并将它们内部联接起来,因此如何计算利润(收入减去成本),以及利润占收入的百分比(利润除以收入)。 我假设代码应该是这样的Sql 如何从两个不同的表中选择两列的差异并计算百分比,sql,sql-server,postgresql,Sql,Sql Server,Postgresql,我需要在最终结果中列出四列。收入、成本、利润和利润占收入的百分比。我已经从两个不同的表中选择了收入和成本,并将它们内部联接起来,因此如何计算利润(收入减去成本),以及利润占收入的百分比(利润除以收入)。 我假设代码应该是这样的 SELECT t.revenue, s.cost, (SELECT t.revenue minus SELECT s.cost) "profit", (("profit"/t.revenue)*100.00) AS "Q%" FROM t INNER JOIN
SELECT
t.revenue,
s.cost,
(SELECT t.revenue minus SELECT s.cost) "profit", (("profit"/t.revenue)*100.00) AS "Q%"
FROM t
INNER JOIN s
ON t.store = s.store
这是正确的吗?不,这是不正确的。但几乎不错:-) 对于此查询,您可以使用“内部联接”或“Where”子句: 使用Where子句 使用内部联接
首先重写
SELECT t.revenue减去SELECT s.cost
ast.revenue-s.cost
请删除不相关的产品标签!
SELECT t.revenue
, s.cost
, t.revenue - s.cost "profit"
, ((t.revenue - s.cost)/t.revenue)*100.00 AS "Q%"
FROM t
INNER JOIN s
ON t.store = s.store
SELECT t.revenue, s.cost, (t.revenue - s.cost) AS profit,
(((t.revenue - s.cost)/t.revenue)*100.00) AS "Q%"
FROM t, s
where t.store = s.store
SELECT t.revenue, s.cost, (t.revenue - s.cost) AS profit,
(((t.revenue - s.cost)/t.revenue)*100.00) AS "Q%"
FROM t
INNER JOIN s
ON t.store = s.store