Versameling van rekords volgens spesifieke waardes in Python
As jy rekords uit 'n groep veldwaardes moet kies,
kan jy die opdrag IN gebruik. Byvoorbeeld,
jy kan rekords kies waar die veld name die
waarde 'user1', 'user3'
of 'user4' het. Dit sal so lyk:
WHERE id IN ('user1',
'user3', 'user4').
In beginsel kan jy ook die opdrag
OR gebruik
vir sulke dinge, dan sal die eerste voorbeeld so lyk:
WHERE id=1 OR id=3 OR
id=7 OR id=14 OR id=28.
Die variant met IN lyk eintlik eenvoudiger
en meer elegant.
Voorbeeld
Laat ons gebruikers kies waar die veld id
die waardes 1, 3, 5 het:
query = "SELECT * FROM users WHERE id IN (1, 3, 5)"
Die resultaat van die uitgevoerde kode:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
Voorbeeld
Die opdrag IN kan met ander opdragte in die
navraag gekombineer word. Kom ons hersien die vorige
voorbeeld deur ook te spesifiseer dat die gebruikers se
ouderdom meer as 23 jaar moet wees:
query = "SELECT * FROM users WHERE id IN (1, 3, 5) AND age>23"
Die resultaat van die uitgevoerde kode:
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
Praktiese take
Kry die gebruikers waar die salaris die waardes
400 en 900 het.
Kry die gebruikers waar die ouderdom
25, 27 en 28 jaar is. En
waar die id meer as 2 is.