Req 1
SELECT * 
FROM COUREUR

Req 2
SELECT * 
FROM COURSE

Req 3
SELECT * 
FROM RESULTAT

Req 4
SELECT NOM, PRENOM
FROM COUREUR

Req 5
SELECT NUMLICENCE
FROM RESULTAT
WHERE 20-(RANG*2)>0

Req 6
SELECT VILLE
FROM COURSE

Req 7
SELECT DISTINCT PRENOM
FROM COUREUR

Req 8
SELECT NOM, PRENOM, DATENAISSANCE
FROM COUREUR
WHERE DATENAISSANCE < {d '1952-07-01'}

Req 9
SELECT RANG 
FROM RESULTAT
WHERE NUMLICENCE=20022911

Req 10
SELECT VILLE
FROM COURSE
WHERE CODEPOSTAL=34000 OR CODEPOSTAL=91000

Req 10 (autre solution)
SELECT VILLE
FROM COURSE
WHERE CODEPOSTAL IN (34000,91000)

Req 11
SELECT NOM, PRENOM
FROM COUREUR
WHERE NOM LIKE 'A%' OR NOM LIKE 'B%' OR NOM LIKE 'C%'

Req 12
SELECT NOM, PRENOM
FROM COUREUR
WHERE NOM LIKE '%O%'

Req 13
SELECT NOM, PRENOM
FROM COUREUR
WHERE NOM NOT LIKE 'B%'

Req 14
SELECT * 
FROM COURSE
ORBER BY VILLE ASC

Req 15
SELECT * 
FROM RESULTAT
ORBER BY RANG DESC

Req 16
SELECT * 
FROM COUREUR
ORBER BY DATENAISSANCE ASC

Req 17
SELECT NUMCOURSE
FROM COUREUR, RESULTAT
WHERE COUREUR.NUMLICENCE=RESULTAT.NUMLICENCE AND NOM='Maurin'

Req 18
SELECT VILLE, CODEPOSTAL, TEMPS, RANG
FROM COURSE, RESULTAT, COUREUR
WHERE COURSE.NUMCOURSE=RESULTAT.NUMCOURSE AND  RESULTAT.NUMLICENCE=COUREUR.NUMLICENCE AND NOM='Maurin'

Req 19
SELECT NOM, PRENOM, TEMPS, RANG 
FROM COURSE, RESULTAT, COUREUR
WHERE COURSE.NUMCOURSE=RESULTAT.NUMCOURSE AND  RESULTAT.NUMLICENCE=COUREUR.NUMLICENCE AND VILLE='Sevran'

Req 20
SELECT TEMPS, RANG 
FROM  RESULTAT
WHERE RANG <= 10

Req 21
SELECT NOM, PRENOM, YEAR(DATENAISSANCE)
FROM COUREUR
ORDER BY NOM ASC

Req 22
SELECT NOM, PRENOM, YEAR(TODAY)-YEAR(DATENAISSANCE)
FROM COUREUR
WHERE DATENAISSANCE >= {d '1952-06-30'}
ORDER BY NOM ASC

Req 23
SELECT AVG(YEAR(TODAY)-YEAR(DATENAISSANCE))
FROM COUREUR
WHERE DATENAISSANCE >= {d '1952-06-30'}

Req 24
SELECT NOM, PRENOM, CASEWHEN(DATENAISSANCE < {d '1952-06-30'}, 'OUI', 'NON' ) AS "né avant le 30 juin 1952"
FROM COUREUR

Req 25
SELECT VILLE, AVG(RANG) AS "Rang moyen"
FROM RESULTAT, COURSE
WHERE COURSE.NUMCOURSE=RESULTAT.NUMCOURSE  
GROUP BY VILLE

Req 26
SELECT MIN(RANG)
FROM RESULTAT, COUREUR
WHERE COUREUR.NUMLICENCE=RESULTAT.NUMLICENCE AND NOM='Bouchard'

Req 27
SELECT NUMCOURSE, MIN(RANG)
FROM RESULTAT
GROUP BY NUMCOURSE

Req 28
SELECT NUMCOURSE, COUNT(*)
FROM RESULTAT
GROUP BY NUMCOURSE

Req 29
SELECT NUMLICENCE, COUNT(*)
FROM RESULTAT
GROUP BY NUMLICENCE

Req 30
SELECT NUMCOURSE, COUNT(*)
FROM RESULTAT
GROUP BY NUMCOURSE
HAVING COUNT(*)>=2 

Req 31
SELECT NUMLICENCE, COUNT(*)
FROM RESULTAT
GROUP BY NUMLICENCE
HAVING COUNT(*)>=2 

Req 32
SELECT DISTINCT RESULTAT1.NUMLICENCE
FROM RESULTAT AS RESULTAT1, RESULTAT AS RESULTAT2
WHERE RESULTAT1.NUMCOURSE = RESULTAT2.NUMCOURSE AND RESULTAT2.NUMLICENCE=20022911  AND RESULTAT1.NUMLICENCE !=20022911

Req 33
SELECT DISTINCT RESULTAT1.NUMCOURSE
FROM RESULTAT AS RESULTAT1, RESULTAT AS RESULTAT2
WHERE RESULTAT1.NUMLICENCE=RESULTAT2.NUMLICENCE AND RESULTAT2.NUMCOURSE=200202 AND RESULTAT1.NUMCOURSE != 200202

Req 34
SELECT DISTINCT RESULTAT1.NUMLICENCE
FROM RESULTAT AS RESULTAT1, RESULTAT AS RESULTAT2, COUREUR as COUREUR1, COUREUR AS COUREUR2
WHERE RESULTAT2.NUMLICENCE = COUREUR1.NUMLICENCE AND RESULTAT1.NUMLICENCE = COUREUR2.NUMLICENCE AND RESULTAT1.NUMCOURSE = RESULTAT2.NUMCOURSE AND COUREUR1.NOM='Sarkozy' AND COUREUR2.NOM !='Sarkozy'