小编Ian*_*Ian的帖子

在 sql server 中滚动日历枢轴?

我已经成功地为自己构建了一个漂亮的小 T-SQL 语句,它将调度信息转换为每月的列。

SELECT *
FROM 
(
    SELECT 
    t1.customer_code,
    t1.part_number,
    LEFT(DATENAME(month, [formatted_date]),3) as [Month],
    t1.quantity as [quantity] FROM FORECAST_VIEW as t1

    where
        quantity <> 0 
        and formatted_date >= DATEADD(month, DATEDIFF(month, 0, GETDATE()), 0)  

) as p
pivot
(
    sum(quantity)
    for [Month] in (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)
) as p
order by customer_code, part_number
Run Code Online (Sandbox Code Playgroud)

这会产生一个带有列的输出

customer_code, part_number, Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec
Run Code Online (Sandbox Code Playgroud)

并汇总每个月所需的 part_number 数量。

这工作正常并且在报告中产生奇迹,但是如果我可以让月份列从当前月份开始并按顺序排列 …

t-sql database sql-server pivot

1
推荐指数
1
解决办法
1808
查看次数

标签 统计

database ×1

pivot ×1

sql-server ×1

t-sql ×1