CREATE TABLE t_seq_sql(
NAMEs VARCHAR2(10),
DATEs DATE);
INSERT INTO t_seq_sql VALUES('a',to_date('20070808','yyyymmdd'));
INSERT INTO t_seq_sql VALUES('a',to_date('20080909','yyyymmdd'));
INSERT INTO t_seq_sql VALUES('a',to_date('20090808','yyyymmdd'));
INSERT INTO t_seq_sql VALUES('b',to_date('20080909','yyyymmdd'));
INSERT INTO t_seq_sql VALUES('c',to_date('20070808','yyyymmdd'));
INSERT INTO t_seq_sql VALUES('c',to_date('20080909','yyyymmdd'));
COMMIT;
SELECT * FROM t_seq_sql;
SELECT * FROM test_null;
SELECT t2.names, t2.dates, COUNT(*) AS seq
FROM t_seq_sql t1, t_seq_sql t2
WHERE t2.names = t1.names
AND t2.dates >= t1.dates
GROUP BY t2.names, t2.dates
ORDER BY 1;
|