====== [АРХИВ] Изменение датасета на произвольный SQL-запрос ====== Создать датасет сразу с произвольным SQL-запросом нельзя. Можно изменить таблицу на произвольный запрос только в уже существующем датасете. Датасет основанный на произвольном SQL-запросе называется __виртуальным__, потому что с помощью запроса данные датасета могут быть получены, как и обычной выборкой реальных данных из физической таблицы, так и с помощью разных инструментов (например, агрегатные, аналитические или оконные функции) из разных таблиц разных схем. Виртуальный датасет в списке выделяется синим {{:superset:work_in_superset:datasets:datasets_4.png?nolink&15|}}.\\ Для смены типа датасета на виртуальный нажмите на значок карандаша в действиях. {{:superset:work_in_superset:datasets:dataset_setting_1.png?nolink&130 |}} \\ В диалоговом окне настроек на вкладке **Источник** заблокировано изменение в целях случайного изменения. Нажмите на {{:superset:work_in_superset:datasets:changing_dataset_to_query_6.png?nolink&15|}}, чтобы разблокировать редактирование полей и выберите ниже **Виртуальный (SQL)**. В поле SQL можно ввести любой sql-запрос. При вводе запроса никаких проверок на корректность синтаксиса и выборки данных не производится.\\ \\ После ввода запроса столбцы почему-то не синхронизируются сразу, поэтому нажимаем снизу кнопку Сохранить и подтверждаем применение изменений. Появится сообщение {{:superset:work_in_superset:datasets:changing_dataset_to_query_2.png?nolink&200|}}, что значит удаление старого датасета и создание нового.\\ По сути, предыдущий датасет удаляется и создается новый, поэтому еще раз подумайте, возможно не стоит трогать уже существующий, а лучше создать новый. {{:superset:work_in_superset:datasets:changing_dataset_to_query_1.png?nolink&500 |}} \\ Чтобы обновились столбцы таблицы в соответствии с результатом запроса, опять из списка датасетов заходим в окно редактирования, сверху выбираем вкладку **Столбцы**. По кнопке **Синхронизировать столбцы из источника** столбцы ниже обновятся, добавятся новые (если были в запросе). Как настроить столбцы см. подробнее [[superset:work_in_superset:datasets:dataset_settings|Настройки датасета]].\\ Также появится сообщение в углу об обновлении столбцов датасета, что говорит о правильном выполнении SQL-запроса.\\ {{ :superset:work_in_superset:datasets:changing_dataset_to_query_4.png?nolink&300 |}}\\ Если SQL-запрос синтаксически неправильно написан или произошла ошибка при синхронизации, будет показано соответствующее сообщение с описанием ошибки.\\ {{ :superset:work_in_superset:datasets:changing_dataset_to_query_5.png?nolink&300 |}} {{:superset:work_in_superset:datasets:dataset_setting_4.png?nolink&700 |}}