0

我正在使用 SQL Server Report Builer 2008 R2,我是自学成才,虽然我可以很好地编写各种代码,但我有一些主要的知识黑洞,如果这是一个非常简单的问题,我深表歉意!

我想创建一个计算字段(理想费率),它查看 SKU 编号,然后找到该 sku 的最高记录目标费率,从而为我提供每个完整小时应该做的事情,当前目标费率根据该小时内的可用时间(当没有可用时间时为零)。

我尝试将“max”与 group 结合使用,但不断遇到错误或不正确的信息。

时间 ----- SKU --- 可用时间 --- 实际 -- 目标 --- 可靠性 -- 理想率
00:00 -- 201168 ------ 45 ---------- --- 1299 ----- 1500 ----- 86.60% ----- 2000
01:00 -- 201168 ------ 00 ------------- 00 -------- 00 --------- 00.00% ----- 2000
02:00 -- 201168 ------ 60 ------------ -- 1500 ----- 2000 ----- 75.00% ----- 2000
03:00 -- 201701 ------ 57 ------------- 306 - ----- 332.5 ----- 92.03% ----- 350
04:00 -- 201701 ------ 60 ------------- 108 ---- -- 350 ----- 44.08% ----- 350
05:00 -- 201701 ------ 30 ------------- 109 ----- - 175 ----- 62.29% ----- 350
06:00 -- 202560 ------ 45 ------------- 505 ----- 600 -------- 84.17% ----- 800
07 :00 -- 202560 ------ 00 ------------- 00 -------- 00 --------- 00.00% ----- 800
08:00 -- 202560 ------ 60 ------------- 500 ------ 800 ------ 62.50% ----- 800
09:00 -- 201168 ------ 09 ------------- 101 ----- 300 -------- 33.67% ----- 2000
10 :00 -- 201168 ------ 27 ------------- 606 ----- 900 -------- 67.33% ----- 2000

4

2 回答 2

0

您能否提供您收到的详细信息或错误以及您提到的不正确信息的示例?以下代码应该为您提供所需的内容。

SELECT SKU, MAX([Target])
  FROM yourTable
 GROUP BY SKU 
于 2013-10-14T12:20:59.890 回答
0

您需要使用子查询来获取给定 SKU 的最大费率,如下所示:

SELECT 
     Time 
    ,SKU
    ,Avaliable_Time
    ,Actual
    ,TargetLoginName
    ,Reliability
    ,i.Rate AS Ideal_Rate
FROM
    table T
LEFT OUTER JOIN
    (
        SELECT 
            SKU
            ,MAX(Rate) AS Rate
        FROM
            table 
        GROUP BY
            SKU
    ) i
    ON i.SKU = T.SKU
于 2013-10-14T12:50:25.853 回答