You are on page 1of 2

SQL statements with errors and poor formatting

1. Semantic error: missing JOIN condition

Corrected statement:

SELECT EvntRqst.EVENTNO, DATEHELD, STATUS, ESTCOST

FROM eventrequest, Empl, faci, EvtPl

WHERE ESTAUDIENCE > 5000

AND EvtPl.EMPNO = Empl.EMPNO

AND EvntRqst.FACNO = faci.FACNO

AND EvntRqst.EVENTNO = EvtPl.EVENTNO

AND FACNAME = 'Football stadium'

AND EMPNAME = 'Mary Manager';

2. Redundancy error: GROUP BY clause not needed

Corrected statement:

SELECT DISTINCT EvntRqst.EVENTNO, DATEHELD, STATUS, ESTCOST

FROM eventrequest, EvtPl

WHERE ESTAUDIENCE > 4000

AND EvtPl.EVENTNO = EvntRqst.EVENTNO;

3. Redundancy error: extra table

Corrected statement

SELECT DISTINCT EvntRqst.EVENTNO, DATEHELD, STATUS, ESTCOST

FROM eventrequest, faci, EvtPl

WHERE estaudience > 5000

AND eventrequest.FACNO = faci.FACNO

AND EvtPl.EVENTNO = eventrequest.EVENTNO


AND FACNAME = 'Football Stadium';

4. Syntax errors: misspelled keyword (BETWEN) and unqualified name (eventno)

Corrected statement

SELECT DISTINCT EvntRqst.EVENTNO, DATEHELD, STATUS, ESTCOST

FROM eventrequest, Empl, EvtPl

WHERE ESTAUDIENCE BETWEEN 5000 AND 10000

AND eventplan.EMPNO = employee.EMPNO

AND eventrequest.EVENTNO = eventplan.EVENTNO

AND EMPNAME = 'Mary Manager';

5.

Corrected statement:

SELECT EvtPl.PLANNO, LINENO, RESNAME, NUMBERFLD, TIMESTART, TIMEEND

FROM eventrequest, faci, EvtPl, EvntPlne, ResTbl

WHERE ESTAUDIENCE = 10000

AND EvtPl.planno = EvntPlne.PLANNO

AND eventrequest.FACNO = faci.FACNO

AND FACNAME = 'Basketball Arena'

AND EvntPlne.RESNO = ResTbl.RESNO

AND eventrequest.EVENTNO = EvtPl.EVENTNO;

You might also like