• Thank you.

    I agree with you. a lot of difficult problem solve by using relational algebra.

    Dr. CJ Date offered two methods but I was looking for the best solution for division operator.

    here is a method: Please exec following script before exec this query

    -- My Method

    SELECT DISTINCT pilot

    FROM PilotSkills AS PS

    WHERE NOT EXISTS (

    SELECT plane FROM Hangar

    EXCEPT

    SELECT plane FROM PilotSkills

    WHERE PS.pilot=pilot

    )

    /*

    CREATE TABLE PilotSkills

    (pilot CHAR(15) NOT NULL,

    plane CHAR(15) NOT NULL,

    PRIMARY KEY (pilot, plane));

    INSERT INTO PilotSkills

    SELECT pilot='Celko', plane='Piper Cub'

    UNION

    SELECT 'Higgins','B-52 Bomber'

    UNION

    SELECT 'Higgins','F-14 Fighter'

    UNION

    SELECT 'Higgins','Piper Cub'

    UNION

    SELECT 'Jones','B-52 Bomber'

    UNION

    SELECT 'Jones','F-14 Fighter'

    UNION

    SELECT 'Smith','B-1 Bomber'

    UNION

    SELECT 'Smith','B-52 Bomber'

    UNION

    SELECT 'Smith','F-14 Fighter'

    UNION

    SELECT 'Wilson','B-1 Bomber'

    UNION

    SELECT 'Wilson','B-52 Bomber'

    UNION

    SELECT 'Wilson','F-14 Fighter'

    UNION

    SELECT 'Wilson','F-17 Fighter'

    CREATE TABLE Hangar

    (plane CHAR(15) NOT NULL PRIMARY KEY);

    INSERT INTO Hangar

    SELECT plane='B-1 Bomber'

    UNION

    SELECT 'B-52 Bomber'

    UNION

    SELECT 'F-14 Fighter'

    */