django Кассандра не выполняет запрос select с предложением where для диапазона даты и времени - PullRequest
0 голосов
/ 18 марта 2020

У меня есть данные в Кассандре, и я пытаюсь получить данные из БД в диапазоне дат и времени.

Ниже приведен код.

fromdate = datetime.combine(dt, datetime.min.time())
todate = datetime.combine(datetime.now().date(), time(23, 59, 59))
print(fromdate)
print(todate)

batch = BatchStatement()
batch.add(SimpleStatement("SELECT * FROM datadump WHERE 'pickup_time' >= '%s' AND 'pickup_time' <= '%s' ALLOW FILTERING;"),
              (fromdate, todate,))
data = session.execute(batch)

Приведенный выше код не работает, когда я пытаюсь получить данные в пределах диапазона времени / даты, но если я пытаюсь получить все данные, такие как «SELECT * from DataPump "это работает.

Может кто-нибудь, пожалуйста, дайте мне знать, что не так с вышеуказанным подходом?

Заранее спасибо!

1 Ответ

2 голосов
/ 18 марта 2020

Вы не можете использовать SELECT в пакетном операторе - это только для INSERT / UPDATE / DELETE ...

Также обратите внимание, что BATCH в CQL отличается от в SQL, и вам необходимо знать, когда его использовать, а когда нет - см. документацию о том, как и когда его использовать .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...