2013-10-14 21 views
0

我正在使用SQL Server报告Builer 2008 R2,我是自学的,虽然我可以在各种各样的事情编码,我有一些主要的知识blackholes如此道歉,如果这是一个真正的简单的问题!使用Max命令与分组

我想创建一个查看SKU编号的计算字段(理想速率),然后找到该SKU的最高记录目标速率,从而给出我应该为每个整小时制定什么,当前目标速率基于那个小时的可用时间而改变(并且当没有时间可用时为零)。

我尝试使用'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

回答

0

您能否提供您正在接收的详细信息或错误,以及示例你提到的不正确的信息?以下代码给你你所需要的。

SELECT SKU, MAX([Target]) 
    FROM yourTable 
GROUP BY SKU 
+0

感谢您的答复,我会尝试与你相似,这部分代码是我收到的错误,只是为了说明我正在试图在数据集中创建计算字段,而不是在报表中创建计算字段。 –

+0

TITLE:Microsoft SQL Server Report Builder ------------------------------ 无法创建'Ideal2'计算成员由于以下错误: MDX表达式在指定完整语句时是预期的。 ------------------------------ 其他信息: MDX表达式是在指定完整语句时预期的。 (Microsoft SQL Server 2008 R2 Analysis Services) ------------------------------ –

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