【发布时间】:2017-12-10 21:04:09
【问题描述】:
我正在为我们公司构建采购/重新订购计划算法。给定以下数据集,我将如何选择具有最高组合值的 6 个月期间? (例如 1 月至 6 月、2 月至 7 月、3 月至 8 月、4 月至 9 月等)
║ January ║ February ║ March ║ April ║ May ║ June ║ July ║ August ║ September ║ October ║ November ║ December ║
║ 5 ║ 2 ║ 6 ║ 2 ║ 5 ║ 4 ║ 8 ║ 5 ║ 6 ║ 4 ║ 3 ║ 2 ║
显然这可以通过以下方式实现,但我希望代码更灵活一点,因此我可以根据需要更改 6 或 12 的值。
(SELECT MAX(Details.Quantity)
FROM
(VALUES
SUM(January, February, March, April, May, June),
SUM(February, March, April, May, June, July),
SUM(March, April, May, June, July, August),
SUM(April, May, June, July, August, September),
SUM(May, June, July, August, September, October),
SUM(June, July, August, September, October, November),
SUM(July, August, September, October, November, December)
) AS Details(Quantity))
AS Max
【问题讨论】:
标签: sql sql-server sql-server-2008-r2