0

私は SQL Server Report Builder 2008 R2 を使用しています。私は独学で、さまざまなことをうまくコーディングできますが、主要な知識のブラックホールがいくつかあるので、これが本当に単純な質問である場合は申し訳ありません!

SKU 番号を調べて、その SKU で記録された最高のターゲット レートを見つける計算フィールド (理想レート) を作成したいので、1 時間ごとに何をすべきかがわかります。その時間の利用可能な時間 (利用可能な時間がない場合はゼロになります)。

グループと組み合わせて「max」を使用しようとしましたが、エラーや誤った情報が引き続き発生します。

時間 --- 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 に答える