我想在单个sql语句中执行多个计数。SQL,具有多个结果的多个计数
我有两个人,马克和克里斯。
我想统计每次在某个日期乘坐火车的次数。这是我正在使用的代码。
SELECT TO_DATE(TRAIN.DEPARTURE_DATE,'YYYYMM')
, (select COUNT(DISTINCT DEPARTURE_DATE)
FROM TRAIN
WHERE PERSON_ID='28' AND DEPARTURE_STATION = 'DUBLIN') AS Mark
, (select COUNT(DISTINCT DEPARTURE_DATE)
FROM TRAIN
WHERE PERSON_ID='29' AND DEPARTURE_STATION = 'DUBLIN') AS Chris
FROM TRAIN
GROUP BY DEPARTURE_DATE
此代码生成的格式是正确的,但结果不是。其结果是
TO_DATE Mark Chris
2009-01-01 8 11
2009-01-02 8 11
2009-01-03 8 11
等....
正确的结果应该
TO_DATE Mark Chris
2009-01-01 8 11
2009-01-02 3 7
2009-01-03 6 5
等等
任何人都可以看到我的代码的问题?
所有帮助表示赞赏
如果您在DEPARTURE_DATE选择,COUNT(DISTINCT DEPARTURE_DATE)只计数1吗? – 2009-06-15 14:07:51