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

ここで、Categoryプライマリ行グループ、次にSubCategoryその子行グループである SSRS レポートを作成しています。次に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では、列を追加する必要があります。数値/数値タイプの列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 に答える