# Универсальные базы данных

Универсальная база данных представляет собой таблицу, в которой имена полей хранятся как значения полей в одном столбце, а значения полей — в другом. Такие базы данных, как правило, используются для атрибутов разных объектов.

Посмотрите на приведенный ниже пример GenericTable. Это универсальная база данных, содержащая два объекта: сферу и поле. Очевидно, что некоторые атрибуты, такие как цвет и толщина, являются общими для обоих типов объектов, в отличие от таких, как диаметр, высота, длина и ширина.

Общий пример таблицы

| object | attribute | value |
| --- | --- | --- |
| ball | color | red |
| ball | diameter | 10 cm |
| ball | weight | 100 g |
| box | color | black |
| box | height | 16 cm |
| box | length | 20 cm |
| box | weight | 500 g |
| box | width | 10 cm |

С одной стороны, предоставление каждому атрибуту отдельного столбца усложняет хранение данных, поскольку многие атрибуты не связаны с определенными объектами.

С другой стороны, смешанное отображение большого количества данных, таких как длина, цвет и толщина, тоже может быть неудобным.

Если эта база данных загружается в программу QlikView обычным способом и отображает данные в таблице, она выглядит следующим образом:

![Example data table display, with three separate data lists titled 'object', 'attribute', and 'value'](https://help.qlik.com/ru-RU/qlikview/September2026/Subsystems/Client/Content/Resources/Images/ex_gen_generic2.png)

Тем не менее, если таблица загружается как универсальная база данных, столбцы два и три разделяются на разные таблицы по одной для каждого уникального значения из второго столбца:

![Example data table display, with seven separate data lists titled for each unique entry in the table](https://help.qlik.com/ru-RU/qlikview/September2026/Subsystems/Client/Content/Resources/Images/ex_gen_generic3.png)

Синтаксис достаточно прост:

Пример:

`Generic SELECT* from GenericTable;`

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