SQL查询 - 如何从日总计中创建列

时间:2018-01-16 20:59:13

标签: sql sql-server

我希望在编写SQL查询时提供一些帮助。我有一个表格,其中包含“动物ID”“动物日期”“毒蛇日期”“Total_Volume”和“特定青蛙的类型”列。我需要每天得到一个组合物,所以我需要做的是将“Total_Volume”加上“动物日期”,然后将其除以个别“总体积”,这样我就可以按日获得组合物%。我添加了一个视觉,所以希望有所帮助。

麦克

enter image description here

1 个答案:

答案 0 :(得分:2)

如果我理解正确,您可以使用窗口功能。以下计算每只动物的比例,基于当天该动物的总数:

select t.*,
       (t.total_volume /
        sum(t.total_volume) over (partition by animalId, cast(animalDate as date))
       ) as day_ratio
from t;

我建议你在应用层进行格式化。