Ciao a tutti,

ho un problemino con una STORED PROCEDURE vi allego una piccola parte della stessa che va in errore. Eseguendo l'update il sistema restituisce il seguente errore:

Msg 512, Level 16, State 1, Line 1

Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

The statement has been terminated.



codice:
truncate table    DBFOREW..CDG_ESTRAZ_ORE

insert into        DBFOREW..CDG_ESTRAZ_ORE

select distinct    risultati.azienda    AS    CDC
,                aziende.ragione_b    AS    DESCRIZIONE

,                risultati.data        AS    DATA
 
,0                    AS    ORE_LAVORATE
       
,0                    AS    ORE_ASS_IN_OUT
 
,0                    AS    ORE_FOR_IN_OUT

,                GETDATE()            AS    DATA_MODIFICA

from            risultati
    JOIN        aziende
on        risultati.azienda = aziende.azienda

where            causale in (select causale from gruppi_causali_c where gruppo = 'FPHL' and azienda = '0000000001')
and        data between 
'2014-05-01' and '2014-05-31'
 
order by        CDC,DATA
----------------------------------------------
--SELECT * FROM DBFOREW..CDG_ESTRAZ_ORE
-----------------------------------------------
--UPDATE ORE_LAVORATE 
-----------------------------------------------
update                    DBFOREW..CDG_ESTRAZ_ORE

set        ORE_LAVORATE =        (
                            SELECT SUM (ORE/
3600.)

FROM        erg_pedus..risultati         AS risultati
JOIN    DBFOREW..CDG_ESTRAZ_ORE
ON    CDG_ESTRAZ_ORE.DATA = risultati.data

WHERE        causale in (select causale from gruppi_causali_c where gruppo = 
'FPHL' and azienda = '0000000001')
and    RISULTATI.data between 
'2014-05-01' and '2014-05-31'

group by    risultati.azienda,risultati.data

                            )

,        DATA_MOODIFICA =    GETDATE()
Eseguendo la select all'interno dell'update i risultato viene visualizzato correttamente.

Grazie