Форум сайта python.su
Есть список keys ключей, для которых с базы sqlite нужно выбрать список значений values.
Я делаю так: пробегаю циклом по списку keys, на каждой итерации беру по одному ключу, формирую с него кортеж, делаю выборку и дополняю результатом выборки список values, код примерно такой:
values = [] for key in keys: tuple_key = (unicode(key, errors='ignore'),) c.execute('SELECT value FROM mytable WHERE key=?', tuple_key) val1 = c.fetchone() values.append(val1)
Отредактировано valet (Окт. 16, 2014 04:12:43)
Офлайн
Разобрался сам , может кому-то пригодится, опубликую решение:
keys_u = [unicode(key, errors='ignore') for key in keys] query = 'SELECT value FROM mytable WHERE key IN (%s)' % ', '.join(['?']*len(keys)) c.execute(query, keys_u) values = c.fetchall()[0]
Офлайн
sqlite3 размером в 40 Гиг - да быть того не может !
хоть и 1.5 года назад :)
Офлайн
warpsonМожет он просто никогда не выполнял VACUUM?
sqlite3 размером в 40 Гиг - да быть того не может !
хоть и 1.5 года назад
Офлайн