ΕΠΙΔΙΌΡΘΩΣΗ: Αντιφατικά αποτελέσματα όταν εκτελείτε ένα σύνθετο ερώτημα που χρησιμοποιεί τον τελεστή ΕΦΑΡΜΟΓΉ στον SQL Server 2008 R2

Η Microsoft διανέμει ενημερώσεις κώδικα του Microsoft SQL Server 2008 R2 μορφή ενός αρχείου λήψης. Επειδή οι ενημερώσεις κώδικα είναι αθροιστικές, κάθε νέα έκδοση περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2008 R2 έκδοση της ενημέρωσης κώδικα.

Συμπτώματα

Στον Microsoft SQL Server 2008 R2, ενδέχεται να λάβετε αντιφατικά αποτελέσματα όταν εκτελείτε ένα σύνθετο ερώτημα που χρησιμοποιεί τον τελεστή ΕΦΑΡΜΟΓΉ .

Σημείωση Λαμβάνετε το σωστό αποτέλεσμα σε αυτό το σενάριο, εάν χρησιμοποιείτε την υπόδειξη ερώτημα ΙΣΧΎΕΙ ΣΕΙΡΆ σε ένα ερώτημα.

Αιτία

Αυτό το ζήτημα παρουσιάζεται επειδή η βελτιστοποίηση ερωτήματος επιλέγει ένα σχέδιο λανθασμένη εκτέλεση του ερωτήματος.

Η βελτιστοποίηση ερωτήματος χειρίζεται το κατηγόρημα " ΟΜΑΔΟΠΟΊΗΣΗ ΚΑΤΆ " για πολλές στήλες σε μια φυσική τελεστή του σχεδίου εκτέλεσης. Ωστόσο, ο τελεστής εξόδους όλων των ομαδοποιημένων στηλών στη λίστα εξόδου και όχι ομαδοποίηση όλες αυτές τις στήλες. Επομένως, το ερώτημα μπορεί να επιστρέψει ένα λανθασμένο αποτέλεσμα.

Σημείωση Ένα παράδειγμα μιας φυσικής χειριστής είναι ο τελεστής Συγκεντρωτικών αποτελεσμάτων ροή .

Για παράδειγμα, η βελτιστοποίηση ερωτήματος δημιουργεί έναν όρο ΟΜΆΔΑ ΑΠΌ ColA, ColB , εσωτερικά από τον ακόλουθο πίνακα:
ColAColB
00
01
Η βελτιστοποίηση ερωτήματος εσφαλμένα ενδέχεται να δημιουργήσει ένα σχέδιο εκτέλεσης που επιστρέφει το ColA και το ColB στήλες. Αυτές οι στήλες έχουν ομαδοποιηθεί με βάση το ColA στήλη στη λίστα εξόδου. Σε αυτό το παράδειγμα, το ερώτημα μπορεί να τυχαία επιστρέφει 0 ή 1 στη στήλη ColB εάν οι τιμές στη στήλη ColA είναι 0.

Προτεινόμενη αντιμετώπιση

Πληροφορίες αθροιστικής ενημερωμένης έκδοσης

SQL Server 2008 R2

Η ενημέρωση κώδικα για αυτό το ζήτημα κυκλοφόρησε πρώτα στην αθροιστική ενημερωμένη έκδοση 5. Για περισσότερες πληροφορίες σχετικά με τον τρόπο απόκτησης αυτού του πακέτου αθροιστική ενημερωμένη έκδοση για τον SQL Server 2008 R2, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
2438347 πακέτο αθροιστικών ενημερώσεων 5 για το SQL Server 2008 R2
Σημείωση Επειδή το build που είναι αθροιστικές, κάθε νέα έκδοση της ενημέρωσης κώδικα περιέχει όλες τις επείγουσες επιδιορθώσεις και όλες τις ενημερώσεις κώδικα ασφαλείας που είχαν περιληφθεί σε προηγούμενες SQL Server 2008 R2 έκδοση της ενημέρωσης κώδικα. Συνιστούμε ότι μπορείτε να εξετάσουν την εφαρμογή της πιο πρόσφατης έκδοσης της ενημέρωσης κώδικα που περιέχει αυτήν την επείγουσα επιδιόρθωση. Για περισσότερες πληροφορίες, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
981356 του SQL Server 2008 R2 δημιουργεί που κυκλοφόρησαν μετά την κυκλοφορία του SQL Server 2008 R2

Κατάσταση

Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα ζήτημα των προϊόντων της Microsoft που παρατίθενται στην ενότητα "Ισχύει για".

Περισσότερες πληροφορίες

Για να επιβεβαιώσετε ότι αντιμετωπίζετε αυτό το ζήτημα, ελέγξτε το σχέδιο εκτέλεσης του ερωτήματος προβληματικά και ελέγξτε τους τελεστές ομάδας. Για παράδειγμα, ελέγξτε τον τελεστή συγκεντρωτικών αποτελεσμάτων ροή, ο τελεστής συγκεντρωτικές κατακερματισμού, τον τελεστή διακριτές ταξινόμησης και τον τελεστή του τμήματος αγοράς. Εάν η λίστα των στηλών εξόδου είναι μεγαλύτερο από τη λίστα των ομαδοποιημένων στηλών, αντιμετωπίζετε αυτό το ζήτημα.

Αναφορές

Για περισσότερες πληροφορίες σχετικά με το μοντέλο τμηματικής συντήρησης για τον SQL Server, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

935897 μια τμηματική μοντέλο συντήρησης είναι διαθέσιμα από την ομάδα του SQL Server για την παράδοση επείγουσες επιδιορθώσεις για ζητήματα που αναφέρθηκαν

Για περισσότερες πληροφορίες σχετικά με τη διάταξη ονομασίας των ενημερωμένων εκδόσεων του SQL Server, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:

822499 Νέα διάταξη ονομασίας για τα πακέτα ενημερωμένων εκδόσεων λογισμικού της Microsoft SQL Server
Για περισσότερες πληροφορίες σχετικά με την ορολογία των ενημερώσεων λογισμικού, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο στη Γνωσιακή Βάση της Microsoft:
824684 περιγραφή της βασικής ορολογίας που χρησιμοποιείται για την περιγραφή ενημερωμένων εκδόσεων λογισμικού της Microsoft
Ιδιότητες

Αναγνωριστικό άρθρου: 2428310 - Τελευταία αναθεώρηση: 8 Ιαν 2017 - Αναθεώρηση: 1

Σχόλια