2010-05-27 89 views
0

是否可以使用分组依据来更改结果集中记录/组的顺序?SSRS列按特定顺序分组

=>我有一个查询:

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报告,其中类别是主行组,则子类别是它的子行组。然后ProductName是一个主要列组。

[残破的链接截图:http://www.(freeimagehosting).net/uploads/8035123725.jpg]

它可以完美的,但它显示了在alphabatic顺序ProductNames。我想让它显示在客户订单(由我定义)。像ProductNames,

ProductNo5在第3列,
ProductNo8在第4列,
ProductNo1在第5列
...等等!

回答

2

我不知道产品ssrs,但我知道一般的SQL。在SQL中,你必须添加一个额外的列。您可以将一个数字/数字类型的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