時間:2024-03-13 13:57作者:下載吧人氣:23
數(shù)據(jù)庫環(huán)境:SQL SERVER 2005
現(xiàn)有一個產(chǎn)品銷售實時表,表數(shù)據(jù)如下:
字段name是產(chǎn)品名稱,字段type是銷售類型,1表示售出,2表示退貨,字段num是數(shù)量,字段ctime是操作時間。
要求:
在一行中統(tǒng)計24小時內(nèi)所有貨物的銷售(售出,退貨)數(shù)據(jù),把日期考慮在內(nèi)。
分析:
這實際上是行轉(zhuǎn)列的一個應(yīng)用,在進行行轉(zhuǎn)列之前,需要補全24小時的所有數(shù)據(jù)。補全數(shù)據(jù)可以通過系統(tǒng)的數(shù)字輔助表
spt_values來實現(xiàn),進行行轉(zhuǎn)列時,根據(jù)type和處理后的ctime分組即可。
1.建表,導(dǎo)入數(shù)據(jù)
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′)
網(wǎng)友評論