Сравнение версий
Ключ
- Эта строка добавлена.
- Эта строка удалена.
- Изменено форматирование.
Функция преобразования SQL-запросов открывает возможности для выполнения операций, которые не предусмотрены стандартными инструментами.
Допустим, у вас есть , вы хотите загрузить две таблицы из разных источников, и с помощью SQL-запроса объединить их и выполнить расчеты на основе данных обеих таблиц. Вот как это можно сделать:
Сначала начнем загружать таблицу из базы данных с помощью JDBC, и после заполнения всех полей запроса, нажмем Преобразовать данные в нижней части окна, чтобы перейти в модуль преобразования данных:
Image AddedКак видно, наша таблица загрузилась в модуль преобразований данных:
Image AddedТеперь загрузим вторую таблицу, теперь уже из CSV-файла. Для этого нажмем Данные > Новый источник данных и выберем источником CSV-файл:
Image AddedНа странице предпросмотра нажмём кнопку Добавить. Таблица появится в панели Запросы:
Image Added
Теперь, имея данные двух таблиц, мы можем воспользоваться SQL-запросом, который произведет объединение таблиц и рассчитает информацию об общем доходе, средней сумме дохода и количестве продаж для каждого уникального продукта, отсортированную по общему доходу. Для этого необходимо сделать следующее:
Нажать кнопку SQL-преобразование в панели инструментов:
Image AddedВ открывшемся диалоге введите название преобразования, SQL-запрос и нажмите Добавить преобразование:
Image AddedРезультат вычислений отобразится в области предварительного просмотра:
Image AddedНажмите Добавить запрос, чтобы добавить результирующую таблицу в модель данных. Таблица отобразится в списке доступных таблиц:
Image Added
вас есть две таблицы - Продажи и Список продуктов, которые таблица Продажи с данными о продажах по нескольким странам, и вы хотите отобразить в отдельных колонках данные о всех проданных товарах и информацию об общей прибыли. При этом вы хотите сгруппировать данные по странам и отобразить их в порядке убывания. Для этого вы можете сделать следующее:
Нажмите кнопку SQL-преобразование:
В открывшемся диалоге укажите название преобразования и введите SQL-запрос. В нашем примере мы будем использовать следующий запрос:
Блок кода language sql SELECT "Country", SUM("Units Sold") AS "Total_Units_Sold", SUM("Profit") AS "Total_Profit" FROM {Продажи} GROUP BY "Country" ORDER BY "Total_Profit" DESC;
где
SELECT "Country", SUM("Units Sold") AS "Total_Units_Sold", SUM("Profit") AS "Total_Profit"
– извлекает данные по странам (Country
), а также производит суммирование общего количества проданных единиц (Units Sold
) и общей прибыли (Profit
). Суммарные значения названы соответственно:Total_Units_Sold
иTotal_Profit
.FROM {Продажи}
– указывает, что данные берутся из таблицы с название "Продажи".GROUP BY "Country"
– группирует данные по странам, чтобы суммировать данные отдельно для каждой страны.ORDER BY "Total_Profit" DESC
– упорядочивает результаты по общей прибыли в порядке убывания, благодаря чему страны с наибольшей прибылью оказываются вверху списка.
Нажмите Добавить преобразование. В итоговой таблице отобразятся результаты трансформации:
Если результат вас устраивает и никакие трансформации больше не нужны, нажмите кнопку Добавить запрос, чтобы добавить преобразованную таблицу в модель данных:
Если потребуется выполнить дополнительные преобразования, нажмите напротив названия таблицы и выберите пункт Изменить запрос в выпадающем меню. Откроется окно преобразований данных, где вы сможете внести необходимые изменения:
Примечание |
---|
Если изменятся исходные данные, то всё, что было настроено в процессе преобразования, также обновится. |
Смотрите также