22,207
社区成员
发帖
与我相关
我的任务
分享
USE tempdb
GO
IF OBJECT_ID('t') IS NOT NULL DROP TABLE t
GO
CREATE TABLE t(
[Date] DATE,
[ItemID] INT,
Stock BIT,
City NVARCHAR(10)
)
GO
INSERT INTO t
select '2018-09-01',1,1,'北京'
union all select '2018-09-01',1,0,'上海'
union all select '2018-09-01',2,1,'北京'
union all select '2018-09-01',2,1,'上海'
union all select '2018-09-01',3,0,'北京'
union all select '2018-09-01',3,0,'上海'
union all select '2018-09-02',1,1,'北京'
union all select '2018-09-02',1,1,'上海'
union all select '2018-09-02',2,1,'北京'
union all select '2018-09-02',2,0,'上海'
union all select '2018-09-02',3,0,'北京'
union all select '2018-09-02',3,1,'上海'
GO
------------- 以上为测试表及测试数据 -------------
SELECT [Date],COUNT(DISTINCT ItemID) AS cnt
FROM t
WHERE Stock=1
GROUP BY [Date]
/*
Date cnt
---------- -----------
2018-09-01 2
2018-09-02 3
*/