Cassandra - выберите возвращаемые нулевые значения в зависимости от предложения WHERE - PullRequest
0 голосов
/ 31 августа 2018

У нас есть следующее утверждение:

SELECT id, creationuser, lastversion FROM fenix
WHERE id = 96809ff7-313d-4c02-b9af-6ac38ae3df58 and lastversion = true LIMIT 1;

И следующий результат:

------------------------------------------------------------------+
id                                   | creationuser | lastversion |
------------------------------------------------------------------+
96809ff7-313d-4c02-b9af-6ac38ae3df58 | <<null>>     | true        |
------------------------------------------------------------------+

Обратите внимание, что столбец creationuser не заполнен.

Но, когда мы выполним следующий оператор (с измененным выражением where):

SELECT id, creationuser, lastversion FROM fenix
WHERE Id = 96809ff7-313d-4c02-b9af-6ac38ae3df58 limit 1;

Мы получаем другой результат:

------------------------------------------------------------------+
id                                   | creationuser | lastversion |
------------------------------------------------------------------+
96809ff7-313d-4c02-b9af-6ac38ae3df58 | user_fenix1  | true        |
------------------------------------------------------------------+

Почему мы получаем разные результаты при изменении предложения WHERE? Почему возвращается значение <<null>> к существующему значению?

[EDIT]

Структура таблицы:

CREATE TABLE fenix (
      id                uuid,
      creationuser      text,
      lastversion       bool,
      creationdate      timestamp,
      editiondate       timestamp,
      PRIMARY KEY (id, creationdate, editiondate)
)WITH CLUSTERING ORDER BY(creationdate DESC, editiondate DESC);

Полные данные в таблице:

--------------------------------------------------------------------------------------------------------------------------+
id                                   | creationuser | lastversion | creationdate               | editiondate              |
--------------------------------------------------------------------------------------------------------------------------+
96809ff7-313d-4c02-b9af-6ac38ae3df58 | user_fenix1  | true        | 2018-08-31 04:50:13+0000   | 2018-08-31 04:50:13+0000 |
--------------------------------------------------------------------------------------------------------------------------+
96809ff7-313d-4c02-b9af-6ac38ae3df58 | user_fenix1  | false       | 2018-08-31 04:50:13+0000   | 2018-08-31 04:50:13+0000 |
--------------------------------------------------------------------------------------------------------------------------+

CREATE SEARCH INDEX ON fenix WITH lastversion;
...