Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Inserisci in una tabella temporanea in un CTE

Semplicemente, non è possibile utilizzare la funzione INSERT all'interno di un CTE. Supponendo che "Final" fosse uno degli altri CTE nello script CTE multi, sposta semplicemente INSERT INTO #Clients al di fuori dello script CTE. Apparentemente non hai bisogno della tabella temporanea, poiché stai utilizzando CTE, la CTE dei clienti sarà disponibile o meno. Suggerisco di eliminare del tutto la tabella temporanea e di continuare con il metodo CTE che hai già in atto. Potrebbe essere necessario pubblicare più script per ottenere una migliore portata della domanda.

 ,Clients as
     (Select 
     Distinct
     HospMastID
     ,HospCode
     ,ClientID
     From
    Final)