Επιλογή εγγραφών κατά το SQL αίτημα στη βάση δεδομένων στην Python
Στον δοκιμαστικό κώδικα του SQL αιτήματος υπάρχει η εντολή
SELECT, που εκτελεί την επιλογή δεδομένων
από τη ΒΔ. Ας εξετάσουμε τώρα πιο αναλυτικά
τη σύνταξή της. Εδώ είναι:
query = "SELECT * FROM πίνακας WHERE συνθήκη"
Μετά το όνομα του πίνακα μπορείτε να γράψετε
την εντολή WHERE, στην οποία καθορίζεται
η συνθήκη για τις εγγραφές που επιλέγονται. Σε αυτήν επιτρέπονται
οι ακόλουθες πράξεις σύγκρισης: =,
!=, <>, <, >,
<=, >=.
Ας εξετάσουμε την εφαρμογή τους με παραδείγματα.
Παράδειγμα
Ας επιλέξουμε τον χρήστη με id, ίσο με 2:
query = "SELECT * FROM users WHERE id=2"
Αποτέλεσμα του εκτελεσμένου κώδικα:
{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}
Παράδειγμα
Ας επιλέξουμε χρήστες με id, μεγαλύτερο από 2:
query = "SELECT * FROM users WHERE id>2"
Αποτέλεσμα του εκτελεσμένου κώδικα:
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}
Παράδειγμα
Ας επιλέξουμε χρήστες με id, μεγαλύτερο ή
ίσο με 2:
query = "SELECT * FROM users WHERE id>=2"
Αποτέλεσμα του εκτελεσμένου κώδικα:
{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}
Παράδειγμα
Ας επιλέξουμε χρήστες με id, όχι ίσο
με 2:
query = "SELECT * FROM users WHERE id!=2"
Αποτέλεσμα του εκτελεσμένου κώδικα:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}
Παράδειγμα
Αντί για την εντολή != μπορείτε να γράψετε
την εντολή <>:
query = "SELECT * FROM users WHERE id<>2"
Παράδειγμα
Ας επιλέξουμε τον χρήστη με όνομα 'user1'.
Εδώ μας περιμένει μια σημαντική απόχρωση: αφού
το όνομα είναι συμβολοσειρά, τότε πρέπει
να το πάρει σε εισαγωγικά:
query = "SELECT * FROM users WHERE name='user1'"
Αποτέλεσμα του εκτελεσμένου κώδικα:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
Παράδειγμα
Εάν η εντολή WHERE απουσιάζει, τότε
θα επιλεγούν όλες οι εγγραφές από τον πίνακα. Ας
επιλέξουμε όλους τους εργαζόμενους:
query = "SELECT * FROM users"
Αποτέλεσμα του εκτελεσμένου κώδικα:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}
Πρακτικές ασκήσεις
Επιλέξτε τον χρήστη με id, ίσο με 3.
Επιλέξτε χρήστες με μισθό 900.
Επιλέξτε χρήστες στην ηλικία των 23 ετών.
Επιλέξτε χρήστες με μισθό μεγαλύτερο από 400.
Επιλέξτε χρήστες με μισθό ίσο ή
μεγαλύτερο από 500.
Επιλέξτε χρήστες με μισθό ΟΧΙ ίσο
με 500.
Επιλέξτε χρήστες με μισθό ίσο ή
μικρότερο από 500.