У меня есть таблица со столбцами 'cellid', 'date' (datetime) и 'block' (real).
Я пытаюсь найти все идентификаторы, которые имели block> 1 дляпоследние 3 дня.
В настоящее время я делаю это так:
cells = npar.db.execute("SELECT cellid FROM data WHERE block > 1 AND date=?", (files[0][1],)).fetchall()
cells1 = npar.db.execute("SELECT cellid FROM data WHERE block >1 AND date = ?", (files[1][1],)).fetchall()
self.common(cells,cells1)
cells1 = npar.db.execute("SELECT cellid FROM data WHERE block >1 AND date = ?", (files[2][1],)).fetchall()
self.common(cells,cells1)
print len(cells)
def common(self,a,b):
for item in a:
if item not in b:
a.remove(item)
b = npar.db.execute("SELECT cellid FROM data WHERE block > 1 AND date >= ? GROUP BY cellid HAVING COUNT(cellid) = 3", (files[2][1],)).fetchall()
print len(b)
len (b) не равно len (ячейки)