Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886

    Select in tabella temporane

    Ciao, in questa query (abbastanza complessa per me):

    codice:
             SELECT DISTINCT
                  C.BSId
                 ,C.DOCUMENTID  as MaxDocumentIdTot    
                 ,SC.MAXDATEEXPIRED as MaxDateExpiredTot
             FROM #TMPLISTDOCUMENT_2 C
             --INTO #TMPListDocument_TotClear 
             INNER JOIN
             (
                SELECT 
                T.BSID,                                
                MAX(T.DATEEXPIRED) AS MAXDATEEXPIRED
                FROM #TMPLISTDOCUMENT_2 T        
                GROUP BY T.BSID
             )
             SC ON C.BSID = SC.BSID
             AND C.DATEEXPIRED = SC.MAXDATEEXPIRED 
             ORDER BY C.BSID ASC

    INTO #TMPListDocument_TotClear non me lo accetta.

    Perche' ?

    La query attinge da precedenti SELECT su tabelle temporanee e serve per successive SELECT di scremature dati, quindi non posso commentarla e farla eseguire 'direttamente'. Deve mettere il risultato in memoria.

  2. #2
    ciko, oramai lo sai di che db stiamo parlando? (immagino sql server)

  3. #3
    cmq, select...into...from, non select...from...into

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    sql server.

    no, era

    codice:
    		 INSERT INTO #TMPLISTDOCUMENT_TOTCLEAR 
    		 SELECT DISTINCT
    			  tmpDocuments.BSId
    			 ,tmpDocuments.DOCUMENTID  as MaxDocumentIdTot	
    			 ,SC.MAXDATEEXPIRED as MaxDateExpiredTot
    		 FROM #TMPLISTDOCUMENT_2 tmpDocuments
    		 INNER JOIN
    		 (
    			SELECT 
    			T.BSID,								
    			MAX(T.DATEEXPIRED) AS MAXDATEEXPIRED
    			FROM #TMPLISTDOCUMENT_2 T		
    			GROUP BY T.BSID
    		 )
    		 SC ON tmpDocuments.BSID = SC.BSID
    		 AND tmpDocuments.DATEEXPIRED = SC.MAXDATEEXPIRED 
    		 ORDER BY tmpDocuments.BSID ASC

  5. #5
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    INSER INTO #table SELECT campi FROM.

    Perche' la Join rompe

  6. #6
    la select da sola funzionerebbe?

  7. #7

  8. #8

  9. #9
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,886
    che la INTO #temp andava messa all'inizio e non dopo la FROM

    NON cosi':

    codice:
    ...
    FROM #TMPLISTDOCUMENT_2 C
             --INTO #TMPListDocument_TotClear
    ...
    




    ma così

    codice:
    INSERT INTO #TMPLISTDOCUMENT_TOTCLEAR 
    SELECT DISTINCT
    

  10. #10
    due sono le forme:
    1. INSERT INTO ... SELECT ... FROM
    2. SELECT ... INTO ... FROM (questa te l'avevo già suggerita, forse ti è sfuggita)

    comunque, tutto a posto adesso?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.