Al momento sei offline in attesa che la connessione Internet venga ristabilita

FIX: Risultati incoerenti quando si esegue una query complessa che utilizza l'operatore APPLY in SQL Server 2008 R2

Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 2428310
Microsoft distribuisce aggiornamenti di Microsoft SQL Server 2008 R2 come un unico file scaricabile. Poiché le correzioni sono cumulative, ogni nuova versione contiene tutti gli hotfix e tutte le correzioni rilasciate con SQL Server 2008 R2 precedente correggere versione.
Sintomi
In Microsoft SQL Server 2008 R2, potresti ricevere risultati incoerenti quando si esegue una query complessa che utilizza ilAPPLICAREoperatore.

NotaViene visualizzato il risultato corretto in questo scenario, se si utilizza ilIMPONI ORDINESuggerimento per la query in una query.
Cause
Questo problema si verifica poiché query optimizer sceglie un piano di esecuzione non corretta per la query.

I punti di manipolazione di query optimizer laRAGGRUPPA PERpredicato per più colonne di un operatore fisico del piano di esecuzione. Tuttavia, l'operatore restituisce tutte le colonne raggruppate nell'elenco di output e non raggruppare tali colonne. Pertanto la query potrebbe restituire un risultato non corretto.

NotaUn esempio di un operatore fisico è ilFlusso aggregatooperatore.

Ad esempio, query optimizer genera unGROUP BY ColA, ColBclausola internamente a fronte della tabella seguente:
ColAColB
00
01
Query optimizer non corretto può generare un piano di esecuzione restituisce entrambi iColAeColBcolonne. Queste colonne vengono raggruppate in base alColAcolonna nell'elenco di output. In questo esempio, la query potrebbe restituire in modo casuale0oppure1nelColBcolonna se i valori diColAcolonna sono0.
Risoluzione

Informazioni sull'aggiornamento cumulativo

SQL Server 2008 R2

La correzione di questo problema è stata rilasciata prima in 5 aggiornamento cumulativo. Per ulteriori informazioni su come ottenere il pacchetto di aggiornamento cumulativo per SQL Server 2008 R2, fare clic sul numero dell'articolo della Microsoft Knowledge Base:
2438347Pacchetto di aggiornamento cumulativo 5 per SQL Server 2008 R2
NotaPoiché le generazioni sono cumulative, ogni nuova versione contiene tutti gli hotfix e tutte le correzioni rilasciate con SQL Server 2008 R2 precedente correggere versione. Si consiglia di considerare l'applicazione alla versione più recente di correzione contenente questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base:
981356SQL Server 2008 R2 versioni rilasciate dopo il rilascio di SQL Server 2008 R2
Status
Microsoft ha confermato che si tratta di un problema con i prodotti elencati nella sezione "Si applica a".
Informazioni
Per verificare che si sta verificando questo problema, esaminare il piano di esecuzione della query problematica e quindi verificare gli operatori del gruppo. Controllare, ad esempio, l'operatore di aggregazione del flusso, l'operatore di aggregazione hash, l'operatore distinct sort e l'operatore del segmento. Se l'elenco delle colonne di output supera l'elenco delle colonne raggruppate, si sta verificando questo problema.
Riferimenti
Per ulteriori informazioni sul modello di manutenzione incrementale per SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base:
935897Un modello di manutenzione incrementale è disponibile dal team di SQL Server per distribuire le correzioni per i problemi segnalati
Per ulteriori informazioni sullo schema di denominazione degli aggiornamenti di SQL Server, fare clic sul numero dell'articolo della Microsoft Knowledge Base:
822499Nuovo schema di denominazione per i pacchetti di aggiornamento software di Microsoft SQL Server
Per ulteriori informazioni sulla terminologia di aggiornamento software, fare clic sul numero dell'articolo della Microsoft Knowledge Base:
824684Descrizione della terminologia standard utilizzata per descrivere gli aggiornamenti software Microsoft

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 2428310 - Ultima revisione: 12/31/2010 07:17:00 - Revisione: 2.0

Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB2428310 KbMtit
Feedback
/html>