Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 16, 2013 01:42:18

Solly
Зарегистрирован: 2013-10-16
Сообщения: 8
Репутация: +  0  -
Профиль  

Запрос where in () - с подстановкой

Здравствуйте, напишите пожалуйста примеры запроса типа

SELECT * FROM table WHERE  c IN ("word1","word2","word3")
с помощью MySqldb и SqlAlchemy (без orm)
т.е. что-то типа
        
db=create_engine('mysql://xxx@yyy/zzz?charset=utf8',
                               encoding = 'utf8',
                               convert_unicode=True)
sn=["word1","word2","word3"]
result = db.execute(text('select * from table where sn in (:sn)'),
                                  {'sn':','.join(sn)})
Если в списке только 1 слово оставить - то срабатывает, а если несколько - то ничего не находит… как сдлать чтобы правильно экранировало все?
Заранее благодарю

Офлайн

#2 Окт. 16, 2013 08:30:06

alrusdi
Зарегистрирован: 2013-09-30
Сообщения: 20
Репутация: +  8  -
Профиль   Отправить e-mail  

Запрос where in () - с подстановкой

На stackoverflow пишуть, что как-то так:

db.execute('select * from table where sn in %s', [(sn,)])

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version