Форум сайта python.su
![[RSS Feed] [RSS Feed]](/static/djangobb_forum/img/feed-icon-small.png) 
			 
							 0
  0   
								
								Есть список 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)
Офлайн
 
							 0
  0   
								
								Разобрался сам , может кому-то пригодится, опубликую решение:
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]
Офлайн
 
							 0
  0   
								
								sqlite3 размером в 40 Гиг - да быть того не может !
хоть и 1.5 года назад :)
Офлайн
 
							 16
  16   
								
								warpsonМожет он просто никогда не выполнял VACUUM?
sqlite3 размером в 40 Гиг - да быть того не может !
хоть и 1.5 года назад
 
					
						
						Офлайн
![[RSS Feed] [RSS Feed]](/static/djangobb_forum/img/feed-icon-small.png)