Përzgjedhja e regjistrimeve sipas vlerave specifike në Python
Nëse duhet të zgjidhni një regjistrim nga një
grup vlerash fushash, mund të përdorni
komandën IN. Për shembull, mund të zgjidhni
regjistrime, fusha name e të cilëve ka
vlerën 'user1', 'user3'
ose 'user4'. Kjo do të duket
kështu: WHERE id IN ('user1',
'user3', 'user4').
Në parim, për gjëra të tilla mund të përdoret
edhe komanda OR,
atëherë shembulli i parë do të dukej kështu:
WHERE id=1 OR id=3 OR
id=7 OR id=14 OR id=28.
Varianti me IN duket më i thjeshtë
dhe më elegant.
Shembull
Le të zgjedhim përdoruesit, fusha id e të cilëve
ka vlerat 1, 3, 5:
query = "SELECT * FROM users WHERE id IN (1, 3, 5)"
Rezultati i kodit të ekzekutuar:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
Shembull
Komanda IN mund të kombinohet me
komanda të tjera në kërkesë. Le të
rishkruajmë shembullin e mëparshëm, duke specifikuar gjithashtu
se mosha e përdoruesve duhet të jetë më shumë se
23 vjet:
query = "SELECT * FROM users WHERE id IN (1, 3, 5) AND age>23"
Rezultati i kodit të ekzekutuar:
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
Detyra praktike
Merrni përdoruesit, paga e të cilëve ka
vlerat 400 dhe 900.
Merrni përdoruesit, mosha e të cilëve është
25, 27 dhe 28 vjet. Duke
pasur id më shumë se 2.