簡體   English   中英

如何在一個月內根據日期對查詢結果進行分組

[英]How to group query results based on date in one month

我的數據庫如下所示:

ID |DATETIME  |T_NUMBER|SOLD|STORE_ID|
---+----------+--------+----+--------+
1  |2019-02-01|1111    |10  |STORE_1
-------------------------------------|
2  |2019-02-01|1112    |5   |STORE_1
-------------------------------------|
3  |2019-02-02|1113    |10  |STORE_1
-------------------------------------|
4  |2019-02-02|1114    |7   |STORE_1
-------------------------------------|
5  |2019-02-02|1115    |3   |STORE_1
-------------------------------------|
6  |2019-02-03|1116    |4   |STORE_1
-------------------------------------| etc.

我想要的結果如下所示:

STORE  | 1 | 2 | 3 | 4 | 5 | ..... |28| 
-------+---+---+---+---+---+-------+--+
STORE_1| 2 | 3 | 1 | 0 | 0 | ..... |0 |
---------------------------------------
STORE_2| X | X | X | X | X | ..... |X |

一點點解釋:標題中的數字1,2,3 ... 28表示在feb中為DATE。 編號2,3,1,0 .... 0表示每個日期的交易總和。 我想在一個月內發布的報告。 Store_2表示我將來擁有的任何商店數據。

我的T-SQL看起來如下(絕對錯誤)

select SUM(T_NUMBER) as 'Total' 
from store_logs
group by cast(time as date)

非常感謝

您可以使用PIVOT運算符。

Sum of transactions per DATE是否意味着您想要每天的COUNT個交易數量? 如果是這種情況, SUM (T_NUMBER)更改為COUNT (T_NUMBER)

SELECT *
FROM   (
           SELECT [STORE_ID], [DAY] = DATEPART (DAY , [DATETIME])
           FROM   store_logs
       ) AS D
       PIVOT
       (
           SUM (T_NUMBER)
           FOR DAY IN ([1], [2], [3], [4], [5], ... [31])
       ) AS P

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM