Mega Code Archive

 
Categories / Oracle PLSQL / Select Query
 

Group by course name then by begin date

SQL> create table registrations   2  ( attendee    NUMBER(4)   3  , course      VARCHAR2(6)   4  , begindate   DATE   5  , evaluation  NUMBER(1)   6  , constraint  R_PK        primary key (attendee,course,begindate)   7  ) ; Table created. SQL> SQL> insert into registrations values (2,'SQL',date '2009-04-12',4   ); 1 row created. SQL> insert into registrations values (14,'SQL',date '2009-04-12',5   ); 1 row created. SQL> insert into registrations values (6,'SQL',date '2009-04-12',4   ); 1 row created. SQL> insert into registrations values (11,'SQL',date '2009-04-12',2   ); 1 row created. SQL> insert into registrations values (8,'SQL',date '2009-10-04',NULL); 1 row created. SQL> insert into registrations values (9,'SQL',date '2009-10-04',3   ); 1 row created. SQL> insert into registrations values (13,'SQL',date '2009-10-04',4   ); 1 row created. SQL> insert into registrations values (13,'SQL',date '2009-12-13',NULL); 1 row created. SQL> insert into registrations values (6,'SQL',date '2009-12-13',NULL); 1 row created. SQL> insert into registrations values (3,'OAU',date '2009-08-10',4   ); 1 row created. SQL> insert into registrations values (12,'OAU',date '2009-08-10',4   ); 1 row created. SQL> insert into registrations values (13,'OAU',date '2009-08-10',5   ); 1 row created. SQL> SQL> select r.course, r.begindate   2  ,      count(r.attendee) as attendees   3  from   registrations r   4  group  by r.course, r.begindate; COURSE BEGINDATE   ATTENDEES ------ ---------- ---------- OAU    10-08-2009          3 SQL    12-04-2009          4 SQL    04-10-2009          3 SQL    13-12-2009          2 SQL> SQL> drop table registrations; Table dropped.