⊗pyPmDBNSr 115 of 129 menu

Ταξινόμηση εγγραφών μέσω SQL ερωτήματος στην Python

Για να ταξινομήσετε τις σειρές του αποτελέσματος, πρέπει να χρησιμοποιήσετε την εντολή ORDER BY.

Παράδειγμα

Ας επιλέξουμε από τον πίνακα users όλους τους χρήστες και ας τους ταξινομήσουμε κατά ηλικία από τη μικρότερη προς τη μεγαλύτερη:

query = "SELECT * FROM users ORDER BY age"

Αποτέλεσμα του εκτελεσμένου κώδικα:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

Παράδειγμα

Ας αλλάξουμε τη σειρά ταξινόμησης χρησιμοποιώντας την εντολή DESC:

query = "SELECT * FROM users ORDER BY age DESC"

Αποτέλεσμα του εκτελεσμένου κώδικα:

{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}

Παράδειγμα

Ας επιλέξουμε όλους τους χρήστες με μισθό 500 και ας τους ταξινομήσουμε κατά ηλικία από τη μικρότερη προς τη μεγαλύτερη:

query = "SELECT * FROM users WHERE salary=500 ORDER BY age"

Αποτέλεσμα του εκτελεσμένου κώδικα:

{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}

Παράδειγμα

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

query = "SELECT * FROM users ORDER BY age, salary"

Αποτέλεσμα του εκτελεσμένου κώδικα:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

Παράδειγμα

Η εντολή ORDER BY μπορεί να συνδυαστεί με την LIMIT . Σε αυτήν την περίπτωση πρέπει πρώτα να γράψετε την εντολή ταξινόμησης, και μετά - το όριο. Στο επόμενο παράδειγμα πρώτα θα ταξινομήσουμε τις εγγραφές κατά αύξουσα ηλικία, και μετά θα πάρουμε τις πρώτες 3:

query = "SELECT * FROM users ORDER BY age LIMIT 3"

Αποτέλεσμα του εκτελεσμένου κώδικα:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}

Πρακτικές ασκήσεις

Ανακτήστε όλους τους χρήστες και ταξινομήστε τους κατά αύξον μισθό.

Ανακτήστε όλους τους χρήστες και ταξινομήστε τους κατά φθίνον μισθό.

Ανακτήστε όλους τους χρήστες και ταξινομήστε τους κατά όνομα.

Ανακτήστε χρήστες με μισθό 500 και ταξινομήστε τους κατά ηλικία.

Ανακτήστε όλους τους χρήστες και ταξινομήστε τους κατά όνομα και κατά μισθό.

Ταξινομήστε τους χρήστες κατά αύξον μισθό και λάβετε τους πρώτους 3 εργαζόμενους από το αποτέλεσμα της ταξινόμησης.

Ταξινομήστε τους χρήστες κατά φθίνον μισθό και λάβετε τους πρώτους 3 χρήστες από το αποτέλεσμα της ταξινόμησης.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη