2016-02-10 2 views

ответ

0

Попробуйте

SELECT * FROM api_call_log WHERE account_sid='XXXXXXXXXXXX' AND jobs.created_at between '01-02-2016 00:00:00' and '31-02-2016 23:59:59'; 

А также проверить формат даты/времени даты столбца

+0

'между' не работает для Cassandra. Я думаю, что OP случайно включал тег mysql. – Aaron

1

Трудно сказать, не видя вашу структуру таблицы или соответствующие части результирующего набора. Но я заметил, что вы не с указанием смещения по GMT, что означает, что вы эффективно запрос по местному смещению по умолчанию. Проблема в том, что Кассандра хранит GMT + 0000.

Например, если у вас отрицательное GMT-смещение, скажем -0600 (например, я), запрос на GMT-0600 пропустит данные за 6 часов с 1 февраля. Например, если у меня есть строка там для 2016-02-01 01:00:00+0000, этот запрос не возвращает его:

[email protected]:stackoverflow> SELECT * FROm events WHERe monthbucket='201602' 
    AND eventdate >= '2016-02-01 00:00:00'; 

monthbucket | eventdate | beginend | eventid | eventname 
-------------+-----------+----------+---------+----------- 

(0 rows) 

И это потому, что, по существу, 2016-02-01 01:00:00+00002016-01-31 19:00:00-0600. Поэтому, если я добавлю смещение по часовой стрелке 0000, я вижу строку.

[email protected]:stackoverflow> SELECT * FROm events WHERe monthbucket='201602' 
    AND eventdate >= '2016-02-01 00:00:00+0000'; 

monthbucket | eventdate    | beginend | eventid        | eventname 
-------------+--------------------------+----------+--------------------------------------+------------------- 
     201602 | 2016-02-01 01:00:00+0000 |  b | 78d2c2b7-c4ec-408f-be37-eccc0c05727d | test month border 

(1 rows) 

Мое предположение, что вы, вероятно, имеют противоположную проблему (дополнительные строки против недостающих строк) из-за наличия положительной GMT смещение. Не указывая, что ваше смещение в вашем запросе может быть связано с тем, что оно включает строки из предыдущего месяца. И если это так, тогда вам могут понадобиться эти строки.

Кроме того, не используйте ALLOW FILTERING. Как обычно.

Смежные вопросы