【发布时间】:2015-08-11 16:32:22
【问题描述】:
所以我有一个表格筛选:
Name Null? Type
--------------------------------------- -------- -------------
SCREENINGNO NOT NULL VARCHAR2(8)
CINEMANO VARCHAR2(8)
MOVIENO VARCHAR2(8)
SUPERVISORNO VARCHAR2(8)
CAMERAOPNO VARCHAR2(8)
HOURSTART NUMBER(38)
SCREENINGDATE DATE
问题是“显示 2015 年每个月安排的放映次数。”
我试过了:
SELECT to_char(s1.screeningdate, 'mm') AS month
,count(s2.screeningno) AS number_of_times_screened
FROM screening s1
,screening s2
WHERE s1.movieno(+) = s2.movieno
AND to_char(s1.screeningdate, 'yy') = '15'
GROUP BY to_char(s1.screeningdate, 'mm')
ORDER BY to_char(s1.screeningdate, 'mm');
它返回了:
MO NUMBER_OF_TIMES_SCREENED
-- ------------------------
01 22
02 31
03 24
04 32
05 26
06 37
07 15
08 15
10 10
11 5
12 8
已选择 11 行。
它只返回 11 行,我也需要它来显示 9 月。有人可以帮忙吗?
【问题讨论】:
-
如果您需要任何帮助,您可能需要提供示例数据。另外,请检查您的表格中是否有 9 月份的任何数据。
-
使用分区外连接,如stackoverflow.com/questions/11254121/…。它专为这种情况而设计。