Seleksie van rekords met SQL-navraag na databasis in Python
In die toetskode vir SQL-navraag is daar die opdrag
SELECT, wat data selekteer
uit die databasis. Kom ons kyk nou in meer detail na
die sintaksis daarvan. Hier is dit:
query = "SELECT * FROM tabel WHERE voorwaarde"
Na die tabelnaam kan jy nog die opdrag
WHERE byskryf, waarin die
voorwaarde vir die gekose rekords gestel word. Die volgende
vergelykingsoperasies is daarin toegelaat: =,
!=, <>, <, >,
<=, >=.
Kom ons kyk na die toepassing daarvan met voorbeelde.
Voorbeeld
Laat ons die gebruiker met id, gelyk aan 2, kies:
query = "SELECT * FROM users WHERE id=2"
Resultaat van die uitgevoerde kode:
{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}
Voorbeeld
Laat ons die gebruikers met id, groter as 2, kies:
query = "SELECT * FROM users WHERE id>2"
Resultaat van die uitgevoerde kode:
{'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}
Voorbeeld
Laat ons die gebruikers met id, groter as of
gelyk aan 2, kies:
query = "SELECT * FROM users WHERE id>=2"
Resultaat van die uitgevoerde kode:
{'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}
Voorbeeld
Laat ons die gebruikers met id, nie gelyk aan
2 nie, kies:
query = "SELECT * FROM users WHERE id!=2"
Resultaat van die uitgevoerde kode:
{'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}
Voorbeeld
In plaas van die opdrag != kan jy
die opdrag <> skryf:
query = "SELECT * FROM users WHERE id<>2"
Voorbeeld
Laat ons die gebruiker met die naam 'user1' kies.
Hier wag 'n belangrike nuans op ons: aangesien die
naam 'n string is, moet dit
in aanhalingstekens geplaas word:
query = "SELECT * FROM users WHERE name='user1'"
Resultaat van die uitgevoerde kode:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
Voorbeeld
As die opdrag WHERE afwesig is, dan
sal alle rekords uit die tabel gekies word. Laat ons
al die werknemers kies:
query = "SELECT * FROM users"
Resultaat van die uitgevoerde kode:
{'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}
Praktiese take
Kies die gebruiker met id, gelyk aan 3.
Kies die gebruikers met 'n salaris van 900.
Kies die gebruikers op die ouderdom van 23 jaar.
Kies die gebruikers met 'n salaris meer as 400.
Kies die gebruikers met 'n salaris gelyk aan of
groter as 500.
Kies die gebruikers met 'n salaris NIE gelyk aan
500 nie.
Kies die gebruikers met 'n salaris gelyk aan of
minder as 500.