0

是否可以使用查询更改结果集中记录/组的顺序GROUP BY

我有这个查询:

SELECT Category,
    Subcategory,
    ProductName,
    CreatedDate,
    Sales
FROM TableCategory tc INNER JOIN
    TableSubCategory ts ON tc.col1 = ts.col2 INNER JOIN
    TableProductName tp ON ts.col2 = tp.col3   
GROUP BY Category,
    SubCategory,
    ProductName,
    CreatedDate,
    Sales

现在,我正在创建一个 SSRS 报告,其中Category主要行组,然后SubCategory是其子行组。然后ProductName是主列组。

[截图链接断开:http://www.(freeimagehosting).net/uploads/8035123725.jpg]

它工作得很好,但它ProductNames按字母顺序显示。我希望它显示ProductNames自定义顺序(由我定义),例如:

ProductNo5 in 3rd column,  
ProductNo8 in 4th column,  
ProductNo1 in 5th column   
... and so on!
4

1 回答 1

2

我不知道产品 ssrs,但我知道一般的 SQL。在 SQL 中,您必须添加一个额外的列。您可以将类型为 Numeric/number 的列 myOrder 添加到 ProductNames 表并填充 myOrder 列,使其与您想要的任何顺序相对应。之后,您可以执行以下操作:

SELECT Category, 
    Subcategory, 
    ProductName, 
    CreatedDate, 
    Sales 
FROM TableCategory tc 
INNER JOIN TableSubCategory ts 
ON tc.col1 = ts.col2 
INNER JOIN TableProductName tp 
ON ts.col2 = tp.col3
GROUP BY Category, 
    SubCategory, 
    ProductName, 
    CreatedDate, 
    Sales 
ORDER BY TableProductName.myOrder
于 2010-05-27T10:20:05.330 回答