Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Режим SQL Backend имеет ряд ограничений по сравнению с In-memory:

  1. Не поддерживаются Итоги/Подитоги. 
    В случае получения запроса, содержащего Итоги/Подитоги, он будет передан в ViQube(In-memory).
  2. Не поддерживаются операции редактирования строк в таблицах. Возможно только чтение данных. При получении подобного запроса строка будет добавлена в таблицу на ViQube(In-memory) и не будет видна при включенном SQL Backend.
  3. Имеются отличия при работе с NULL в выражениях (по сравнению с ViQube(In-memory)):
    1. В результате сравнения с NULL в случае ViQube(In-memory) будет возвращено FALSE, а в случае ViQube(SQL Backend) будет возвращено NULL
    2. При арифметических операциях NULL в ViQube(In-memory) интерпретируется как (1+NULL =1), а в SQL-базе как UNDEFINED (1+NULL =NULL )
  4. Имеется специфика при работе с некоторыми базами данных. Например, в Postgres SQL не работает sum(boolean). Поэтому могут быть отличия результатах работы Расчетных показателей.
  5. Использование VERTICA
    1. В VERTICA при сортировке по полю нет возможности указывать характер сортировки NULL-значений (нет директив NULL FIRST/LAST). К тому же местоположение Местоположение строк при сортировке полей с NULL-значениями зависит от типа сортируемых данных. На стороне viqube не делалось никаких workaround, т. к. стройного решения не было найдено.
    Использование ORACLE
    1. В ORACLE нет типа данных BOOLEAN. В viqube такие поля фигурируют как целочисленные (0/1). По этой причине не работают логические выражения при формировании SQL