ჩანაწერების არჩევა კონკრეტული მნიშვნელობებით Python-ში
თუ საჭიროა ჩანაწერის არჩევა რაიმე
ჯგუფური მნიშვნელობებიდან, შეგიძლიათ გამოიყენოთ
ბრძანება IN. მაგალითად, შეგიძლიათ აირჩიოთ
ჩანაწერები, რომელთა ველი name აქვს
მნიშვნელობა 'user1', 'user3'
ან 'user4'. ეს ასე გამოიყურება:
WHERE id IN ('user1',
'user3', 'user4').
პრინციპში, ასეთი რამისთვის შეგიძლიათ გამოიყენოთ
ბრძანება OR,
მაშინ პირველი მაგალითი ასე გამოიყურება:
WHERE id=1 OR id=3 OR
id=7 OR id=14 OR id=28.
ვარიანტი IN-თან მაინც უფრო მარტივად
და ელეგანტურად გამოიყურება.
მაგალითი
ავირჩიოთ მომხმარებლები, რომელთა ველი id
აქვს მნიშვნელობები 1, 3, 5:
query = "SELECT * FROM users WHERE id IN (1, 3, 5)"
შესრულებული კოდის შედეგი:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
მაგალითი
ბრძანება IN შეიძლება კომბინირდეს
სხვა ბრძანებებთან მოთხოვნაში. მოდით
გადავწეროთ წინა მაგალითი, დავამატოთ,
რომ მომხმარებლების ასაკი უნდა იყოს
23 წელზე მეტი:
query = "SELECT * FROM users WHERE id IN (1, 3, 5) AND age>23"
შესრულებული კოდის შედეგი:
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
პრაქტიკული ამოცანები
აიღეთ მომხმარებლები, რომელთა ხელფასი აქვს
მნიშვნელობები 400 და 900.
აიღეთ მომხმარებლები, რომელთა ასაკი არის
25, 27 და 28 წელი.
ამასთან, id მეტი უნდა იყოს 2-ზე.