如何为选择价格设计查询,其中总和(税)小于不同表格中的价格(tableA,tableB)
答案 0 :(得分:0)
请检查以下SQL Select语句
;with cte as (
select
a.id, a.tax, a.idprice, b.price,
sum(tax) over (partition by a.idprice) sum_tax
from tableA a
inner join tableB b
on a.idprice = b.idprice
)
select * from cte
where sum_tax < price
首先我使用了SQL CTE (Common Table Expression) query 我使用CTE是因为我在WHERE子句中使用了总和列。 您也可以将相同的SELECT语句放在子查询中而不是SQL CTE表达式
中关于上述查询的一个有趣的事情,也许你是第一次看到它;我使用SUM()聚合函数和Partition By子句 与SQL Count() Over (Partition By)子句一样,partition by使您可以在共享相同值的行上应用聚合函数