J'ai une autre solution mais je me demande laquelle est la plus rapide:
 
1: créer une table contenant le n° des communes recherchée
-insert into LISTE(n°commune);
-select COTATION.NOTE,COTATION.COMMUNE from COTATION where COTATION.COMMUNE in (select * from LISTE);
 
ou
 
2: utiliser les OR et les in. Une requète SQL est limitée à 64 OR et 64 in, en utilisant les 2 on arrive à un nombre suffisament élevé:
 
select COTATION.NOTE,COTATION.COMMUNE
from COTATION  
where COTATION.COMMUNE in ('...','...',....,'...')
OR
COTATION.COMMUNE in('...',...,'...')
OR
...
OR
COTATION.COMMUNE in('...',...,'...');
 
Ou avec plusieurs UNION aussi??
Vous avez déjà essayé???
La création d'une table (ou les insert du moins) représente la solution la plus rapide?