Если вы хотите написать запрос в Python
, который выберет (из SQLite
базы данных) все книги, которые содержат 300 страниц, вы напишите:
numsPages = 300
cur.execute("select * from books where number_of_pages = :numsPages", locals())
Проблема в том, что вы хотите выбрать книги с количеством страниц из определенного набора
lst = computeListFromVariousInputs() # lst is list containing natural numbers
cur.execute("select * from books where number_of_pages in :lst", locals())
Вышеприведенное утверждение невозможно.
Трудно написать в операторе много операторов or
, поэтому я бы хотел использовать оператор in
.
Как бы вы написали запрос без использования множества операторов or
и использования какого-либо списка Python
или другой структуры данных?
Возможно, пример кажется не практичным (и он есть), но этот вопрос более понятен, когда я использую этот пример.