Codice PHP:

    select count
(*)
           
from corso,orariocorso
           where corso
.codice orariocorso.codcorso and giornosett EXTRACT(ISODOW FROM current_date
           
group by idallenatore
           having count
(*) >
questa query funziona...ho fatto la funzione da richiamare con il trigger....

Codice PHP:
CREATE FUNCTION trecorsi() RETURNS trigger AS $trecorsi$
    
BEGIN
       
   
      
if ( select count(*)
           
from corso,orariocorso
           where corso
.codice = NEW.codcorso and giornosett EXTRACT(ISODOW FROM current_date
           
group by idallenatore
         
) > 3

        then  raise exception 
'NON PUOI FARE PIU DI 3 CORSI AL GIORNO';

       
end if;

          
         RETURN NEW;
    
END;
    
$trecorsiLANGUAGE plpgsql;

CREATE TRIGGER trecorsi BEFORE INSERT OR UPDATE ON orariocorso
    
FOR EACH ROW EXECUTE PROCEDURE trecorsi(); 
il problema è che se ho un solo allenatore funziona, ma se ne ho + di uno no.

per esempio con 2 allenatori


(questi me li fa inserire)

allenatore 1
allenatore 2
allenatore 1
allenatore 2


(questi no...anche se andrebbero inseriti xche verificherebbe la condizione)

allenatore 1
allenatore 2


sono i prossimi 2 che non mi deve far inserire


Spero di essere stato chiaro. grazie!!!