Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Σύγκριση στηλών μεταξύ 2 διαφορετικών πινάκων...

Îåêßíçóå áðü ôï ìÝëïò SetN=asxetos.... Τελευταία δημοσίευση από το μέλος KelMan στις 22-10-2007, 10:06. Υπάρχουν 1 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  21-10-2007, 12:04 36453

    Σύγκριση στηλών μεταξύ 2 διαφορετικών πινάκων...

     

     

    Καταρχάς, καλημέρα παιδιά, νέος στο dotNetZone.gr....και ελπίζω να με βοηθήσει να βελτιώσω τις ικανότητες  μου (αν υπάρχουν)στην αναπτυξή και διαχείρηση ΒΔ. Λοιπόν αντιμετωπίζω το εξής πρόβλημα...

    Έχω τους εξής πίνακες Α( ContactName, CardBin,PartnerNum) Β(CardBin, PartnerNum) . Αυτό που θέλω είναι να τσεκάρω οτι για κάθε ContactName του πίνακα Α έχει δηλωθεί σωστό CardBin. Τα σωστά CardBin είναι εξαρχής δηλωμένα στο πίνακα Β( 1 Partner μπορεί να έχει πολλά CardBin). Θέλω επιπλέον να μου επιστρέφει ενα μνμ αν έχει δηλωθεί το σωστό CardBin. To αποτέλεσμα οπως το έχω φανταστεί θα είναι κάπως έτσι Γ( ContactName, CardBin, PartnerNum, MSG). Δηλαδή θα πρέπει να τσεκάρω κάθε φορά αν Α.CardBin=B.CardBin και να μου βγάζει σωστό ή λάθος.Σημείωση: CardBin είναι τύπου numeric νομίζω...  Τι έχετε να μου προτείνεται???

  •  22-10-2007, 10:06 36480 σε απάντηση της 36453

    Απ: Σύγκριση στηλών μεταξύ 2 διαφορετικών πινάκων...

    SELECT Α.ContactName,
           Α.CardBin,
           Α.PartnerNum AS [Α.CardBin],
           Β.PartnerNum AS [B.CardBin],
           [Is Correct] = CASE Α.PartnerNum
                            WHEN Β.PartnerNum THEN 'Yes'
                            ELSE 'No'
                          END
    FROM Α INNER JOIN Β 
           ON Α.CardBin = Β.CardBin

     Μπορείς να κάνεις JOIN τους πίνακες εφόσον υπάρχει ένα κοινό πεδίο. Η παραπάνω λύση είναι απλή και εξετάζει μόνο το ενδεχόμενο ένας κωδικός CardBin να υπάρχει και στους δύο πίνακες. Αν για παράδειγμα ο πίνακας A έχει κωδικούς που δεν υπάρχουν στον πίνακα B, τότε θα πρέπει να κάνεις LEFT JOIN αντί για INNER JOIN.


    Vir prudens non contra ventum mingit
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems