Listing 1

SELECT DISTINCT(band)
FROM BandEJB AS band,
IN (band.recordings) records
WHERE records.numberSold >
( SELECT AVG(subquery_records.numberSold)
FROM BandEJB AS subquery_band,
IN (subquery_band.recordings) subquery_records
WHERE subquery_records.recordingDate > '31/DEC/1960' )
AND records.recordingDate > '31/DEC/1960'

Listing 2

SELECT OBJECT(record)
FROM RecordingEJB AS record
WHERE 3 >
( SELECT COUNT(DISTINCT subquery_record.title)
FROM RecordingEJB AS subquery_record
WHERE subquery_record.numberSold > record.numberSold)
ORDERBY record.numberSold DESC

Listing 3

SELECT DISTINCT OBJECT(band)
FROM BandEJB AS band,
IN (band.recordings) records
WHERE records.numberSold >
( SELECT subquery_records.numberSold
FROM BandEJB AS subquery_band,
IN (subquery_band.recordings) subquery_records
WHERE subquery_records.recordingDate < '01/JAN/1961' )

Listing 4

SELECT DISTINCT OBJECT(band)
FROM BandEJB AS band,
IN (band.recordings) records
WHERE records.numberSold > ANY
( SELECT subquery_records.numberSold
FROM BandEJB AS subquery_band,
IN (subquery_band.recordings) subquery_records
WHERE subquery_records.recordingDate < '01/JAN/1961' )

Listing 5

SELECT OBJECT(targetBand)
FROM BandEJB AS targetBand, 
BandEJB AS founderBand,
ArtistEJB AS founderArtist
WHERE targetBand.name = founderBand.founder
AND founderArtist.name = founderBand.founder
AND founderArtist.id NOT IN 
( SELECT subquery_artist.id
FROM BandEJB AS subquery_band,
IN (subquery_band.artists)subquery_artist
WHERE subquery_band.name = targetBand.name
AND subquery_band.founder = targetBand.founder )

Listing 6

SELECT OBJECT(targetBand)
FROM BandEJB AS targetBand, 
BandEJB AS founderBand
WHERE targetBand.name = founderBand.founder
AND NOT EXISTS
( SELECT subquery_artist.name
FROM BandEJB AS subquery_band,
IN (subquery_band.artists)subquery_artist
WHERE subquery_artist.name = targetBand.name
AND subquery_band.name = targetBand.name
AND subquery_band.founder = targetBand.founder )

Listing 7

SELECT OBJECT(targetBand)
FROM BandEJB AS targetBand, 
IN (targetBand.artists)target_artists,
BandEJB AS founderBand,
ArtistEJB AS founder_artist
WHERE targetBand.name = founderBand.founder
AND founder_artist.name = founderBand.founder
AND founder_artist NOT MEMBER OF target_artists

Listing 8

SELECT WL0.founder, WL0.name, WL0.startDate 
FROM bands WL0, bands WL1, Artists WL2 
WHERE WL0.name = WL1.founder 
AND WL2.name = WL1.founder 
AND WL2.id NOT IN 
( SELECT WL5.id 
FROM bands WL3, band_artist WL4, Artists WL5 
WHERE WL3.name = WL4.band_name 
AND WL3.founder = WL4.band_founder 
AND WL4.artist_id = WL5.id 
AND WL0.founder = WL3.founder 
AND WL0.name = WL3.name)

Listing 9

SELECT WL0.founder, 
WL0.name, 
WL0.startDate 
FROM bands WL0, 
bands WL1, 
Artists WL2 
WHERE WL0.name = WL1.founder
AND WL2.name = WL1.founder
AND WL2.id NOT IN 
( SELECT WL5.id 
FROM bands WL3, Artists WL5, band_artist WL4 
WHERE WL3.name = WL0.name
AND WL3.founder = WL0.founder
AND WL3.name = WL4.band_name 
AND WL3.founder = WL4.band_founder 
AND WL4.artist_id = WL5.id )