This is the query:
list ALL designers giving names and numbers, all modules they design(just module name), and the names of all the applications in which a module which they supply is used. the list should be grouped by designer name and sorted by application whithin each group.

these are the corresponding tables:

Create Table Designer
(Designerid VARCHAR2(5)
constraint UC_Designerid check(Designerid=upper(Designerid))
constraint pk_des PRIMARY KEY,
DName VARCHAR2(20) NOT NULL
constraint UC2_DName check(DName=upper(DName)),
Supervisorid VARCHAR2(5)
constraint FK_Designerid references Designer(Designerid));


CREATE TABLE MODULE
(Moduleno Number
constraint pk_no PRIMARY KEY,
Modulename VARCHAR2(60) NOT NULL,
Modulesize Number
constraint BD_Modulesize CHECK(modulesize>=0),
Designerids Varchar(5)
constraint FK_Designerids references Designer(Designerid));


CREATE TABLE APPLICATION
(ApplicationNo VARCHAR2(5)
constraint pk_nos PRIMARY KEY,
AppsName VARCHAR2(30) NOT NULL
constraint UC_AppsName check(AppsName=upper(AppsName)),
AppsSize number
constraint BD_AppSize CHECK(AppsSize>=0));


CREATE TABLE APPLICATIONMODULE
(ApplicationNo Varchar2(5)
constraint FK_ApplicationNo references Application(ApplicationNo),
ModuleNo number
constraint FK_Moduleno references Module(Moduleno),
CONSTRAINT PK3_TAB PRIMARY KEY(ApplicationNo,ModuleNo));


This is my attempt, but i find that all designer names do not show, and the query is not grouped at all. can some one please help me to fix this query?

heres my attempt

SELECT DName, A.Designerid, modulename, AppsName
FROM Designer A, MODULE B, APPLICATIONMODULE C, APPLICATION D
WHERE A.Designerid = B.Designerids
AND C.ModuleNo= B.ModuleNo
AND C.ApplicationNo = D.ApplicationNo
ORDER BY APPSNAME;