Здравствуйте У меня есть элемент списка, который представляет собой строку, как это:Split строка для создания фильтров SQL
scope_items = [ "4760 5,2 5,1, 7,1 ОКС 8.0.0, чикаго 4.1.0 4.0.0 3.2. 0 1.0.1 3.0.0" ]
что мне удалось „разорваны“ внутри списка я назвал scope_list
scope_list = ['4760', '5.2', '5.1,', 'acs', '8.0.0', '7.1,', 'chicago', '4.1.0', '4.0.0', '3.2.0', '1.0.1', '3.0.0']
Но, как вы можете увидеть запятой (,
) хранится слишком ...
Я хочу, чтобы создать SQL заявление, как:
WHERE (
columnvalue1 = 4760
AND columnvalue2 IN (5.2,5.1)
)
OR (
columnvalue1="acs"
AND columnvalue2 IN (8.0.0,7.1)
)
OR (
columnvalue1 = "chicago"
AND colmnvalue2 IN (4.1.0, 4.0.0, 3.2.0, 1.0.1, 3.0.0)
)
Я использую SQLAlchemy, мне удалось первую часть (до OR), как это:
or_args = [and_(
table1.c.columnvalue1 == scope[0],
table1.c.columnvalue12.in_(scope[1:])) for scope in scope_list]
Как я могу сделать то же самое для всех остальных значений после каждого ,
?