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

 

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

Σε ένα query?

Îåêßíçóå áðü ôï ìÝëïò zeon. Τελευταία δημοσίευση από το μέλος zeon στις 29-09-2008, 09:56. Υπάρχουν 4 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  28-09-2008, 11:24 44939

    Σε ένα query?

    Έχω βρεθεί αντιμέτωπος με το εξής πρόβλημα και αναρωτιέμαι αν έχει λύση με ένα μόνο query. (Να σημειώσω πως πρόκειται για βάση db2).

    Έστω ένας πίνακας με εγγραφές

    group1     Αντώνης     Χριστοδούλου
    group1     Θωμάς       Παπαδόπουλος
    group1     Πέτρος       Χριστοδούλου
    group2     Θανάσης    Αθανασίου
    ....


    Θέλω να φέρω για κάθε group διαφορετικό και για κάθε επώνυμο μία εγγραφή, αλλά όλα τα πεδία. Ας πούμε να φέρω
    group1     Θωμάς       Παπαδόπουλος
    group1     Πέτρος       Χριστοδούλου

    αλλά με ένα query (ή να το θέσω πιο σωστά χωρίς sp και χωρίς να "χτυπήσω" 2 φορές τη βάση μου)

  •  28-09-2008, 21:55 44956 σε απάντηση της 44939

    Απ: Σε ένα query?

    Αυτό μπορείς να το καταφέρεις με ένα απλό GROUP BY στο επώνυμο και το group και βάζοντας κάποιo aggregate function για το όνομα, π.χ. MIN ή MAX. Για παράδειγμα,

    select GroupName, LastName, Max(FirstName)
    from names
    group by GroupName,LastName


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  29-09-2008, 08:04 44961 σε απάντηση της 44956

    Απ: Σε ένα query?

    Όντως έτσι φέρνω τα αποτελέσματα που θέλω. Βέβαια μακάρι να χα μόνο 3 πεδία :) . Δυστυχώς έχω παραπάνω. Παρόλαυατά ναι αυτό το query κάνει ακριβώς τη δουλειά που θέλω
    Ευχαριστώ πολύ!
  •  29-09-2008, 09:11 44962 σε απάντηση της 44961

    Απ: Σε ένα query?

    Τότε θα πρέπει να εξηγήσεις καλύτερα τί θέλεις να κάνεις, γιατί μπορεί και να υπάρχει τρόπος να γίνει. Αν όμως θέλεις να ομαδοποιήσεις βάση δύο πεδίων και έχεις άλλα 10 πεδία, ο ευκολότερος τρόπος είναι απλά να βάλεις max/min στα άλλα 10 πεδία. Ακόμα και σε keystrokes θα βγει γρηγορότερο από μία λύση η οποία κάνει 5 τούμπες για να κάνει το ίδιο "αυτόματα". Και η ταχύτητα του query θα είναι πολύ καλύτερη.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  29-09-2008, 09:56 44965 σε απάντηση της 44962

    Απ: Σε ένα query?

    Θέλω να κάνω αυτό ακριβώς που εξήγησες. Απλά έχω παραπάνω πεδία. Είναι όλα μια χαρά. Παίζει τέλεια
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems