Создать датасет сразу с произвольным SQL-запросом нельзя. Можно изменить таблицу на произвольный запрос только в уже существующем датасете.
Датасет основанный на произвольном SQL-запросе называется виртуальным, потому что с помощью запроса данные датасета могут быть получены, как и обычной выборкой реальных данных из физической таблицы, так и с помощью разных инструментов (например, агрегатные, аналитические или оконные функции) из разных таблиц разных схем. Виртуальный датасет в списке выделяется синим .
Для смены типа датасета на виртуальный нажмите на значок карандаша в действиях.
В диалоговом окне настроек на вкладке Источник заблокировано изменение в целях случайного изменения. Нажмите на , чтобы разблокировать редактирование полей и выберите ниже Виртуальный (SQL). В поле SQL можно ввести любой sql-запрос. При вводе запроса никаких проверок на корректность синтаксиса и выборки данных не производится.
После ввода запроса столбцы почему-то не синхронизируются сразу, поэтому нажимаем снизу кнопку Сохранить и подтверждаем применение изменений. Появится сообщение , что значит удаление старого датасета и создание нового.
По сути, предыдущий датасет удаляется и создается новый, поэтому еще раз подумайте, возможно не стоит трогать уже существующий, а лучше создать новый.
Чтобы обновились столбцы таблицы в соответствии с результатом запроса, опять из списка датасетов заходим в окно редактирования, сверху выбираем вкладку Столбцы. По кнопке Синхронизировать столбцы из источника столбцы ниже обновятся, добавятся новые (если были в запросе). Как настроить столбцы см. подробнее Настройки датасета.
Также появится сообщение в углу об обновлении столбцов датасета, что говорит о правильном выполнении SQL-запроса.
Если SQL-запрос синтаксически неправильно написан или произошла ошибка при синхронизации, будет показано соответствующее сообщение с описанием ошибки.