У меня есть таблица продаж со следующими столбцами:SQL получать повернута топ 5
[Date], [StoreID], [ItemID], [AmountInDollars]. for example:
06052012 | 1 | 111 | 2.35
06052012 | 1 | 222 | 5.00
06052012 | 2 | 333 | 9.99
...
01052012 | 30 | 999 | 3.98
я хочу, чтобы иметь возможность выбрать данные таким образом:
[Date] | [StoreID] | totalSalesForTheDay | TopSellingItemID1 | TopSellingItemID2 | TopSellingItemID3
Я пытаюсь следующий :
select date,
storeID,
sum(AmountInDollars),
ItemID
from sales
group by date,
storeID,
ItemID
Это дает все ItemIDs продающиеся в тот же день ... Как я могу 1 . Ограничить только 3 верхних позиций 2. представить 3 ведущих позиций в этих же строках по горизонтали
Спасибо!
В соответствии с запросом - образец данных. Это исходная таблица
Date | StoreID | ItemID | AmountInDollars
06052012 | 1 | 111 | 2.35
06052012 | 1 | 222 | 5.00
06052012 | 1 | 444 | 9.99
06052012 | 1 | 222 | 5.00
06052012 | 1 | 444 | 9.99
06052012 | 1 | 333 | 9.99
06052012 | 1 | 444 | 9.99
06052012 | 2 | 222 | 5.00
06052012 | 2 | 444 | 9.99
06052012 | 2 | 333 | 9.99
06052012 | 2 | 444 | 9.99
05052012 | 1 | 111 | 2.35
05052012 | 1 | 222 | 5.00
05052012 | 1 | 444 | 9.99
05052012 | 1 | 222 | 5.00
05052012 | 1 | 444 | 9.99
05052012 | 1 | 333 | 9.99
05052012 | 1 | 444 | 9.99
05052012 | 2 | 222 | 5.00
05052012 | 2 | 444 | 9.99
05052012 | 2 | 333 | 9.99
05052012 | 2 | 444 | 9.99
приведет:
Date | StoreID |totalsales | TopSellingItemID1 | TopSellingItemID2 | TopSellingItemID3
06052012 | 1 | 52.31 | 444 | 222 | 111
06052012 | 2 | 34.97 | 444 | 222 | 333
05052012 | 1 | 52.31 | 444 | 222 | 111
05052012 | 2 | 34.97 | 444 | 222 | 111
Благодаря ...
, что СУБД? sql-сервер? MySQL? оракул? – Taryn
У вас есть данные, доступные по тому, что itemId продается каждый день и в каких количествах (количестве)? – Jester
нет, но я думаю, я могу суммировать (ItemID) над ним. Я думал о ранжировании суммы (ItemID)? – kiki