時間:2024-03-13 13:57作者:下載吧人氣:28
數據庫環境:SQL SERVER 2005
現有一個產品銷售實時表,表數據如下:
字段name是產品名稱,字段type是銷售類型,1表示售出,2表示退貨,字段num是數量,字段ctime是操作時間。
要求:
在一行中統計24小時內所有貨物的銷售(售出,退貨)數據,把日期考慮在內。
分析:
這實際上是行轉列的一個應用,在進行行轉列之前,需要補全24小時的所有數據。補全數據可以通過系統的數字輔助表
spt_values來實現,進行行轉列時,根據type和處理后的ctime分組即可。
1.建表,導入數據
CREATE TABLE snake (name VARCHAR(10 ),type INT,num INT, ctime DATETIME )
INSERT INTO snake VALUES(‘ 方便面’, 1,10 ,’2015-08-10 16:20:05′)
INSERT INTO snake VALUES(‘ 香煙A ‘, 2,2 ,’2015-08-10 18:21:10’)
INSERT INTO snake VALUES(‘ 香煙A ‘, 1,5 ,’2015-08-10 20:21:10’)
INSERT INTO snake VALUES(‘ 香煙B’, 1,6 ,’2015-08-10 20:21:10′)
INSERT INTO snake VALUES(‘ 香煙B’, 2,9 ,’2015-08-10 20:21:10′)
INSERT INTO snake VALUES(‘ 香煙C’, 2,9 ,’2015-08-10 20:21:10′)
網友評論