Сравнение версий
Ключ
- Эта строка добавлена.
- Эта строка удалена.
- Изменено форматирование.
Функция преобразования SQL-запросов открывает возможности для выполнения операций, которые не предусмотрены стандартными инструментами.
Допустим, вы хотите Инструмент «SQL-преобразование» предоставляет возможность выполнять сложные операции, недоступные через стандартные средства.
Предположим, вам нужно загрузить две таблицы из разных источников, и объединить их с помощью SQL-запроса объединить их и выполнить расчеты на основе данных обеих таблиц. Вот как это можно сделатьреализовать:
Сначала начнем загружать таблицу из базы данных с помощью JDBCмы подключим JDBC таблицу, и после заполнения всех полей запроса, нажмем Преобразовать данные в нижней части окна, чтобы перейти в модуль преобразования данных:
Image RemovedКак видно, наша таблица загрузилась в модуль преобразований данных:
Image RemovedImage AddedВ окне преобразования данных ETL отображается запрос, загруженный из JDBC источника:
Image AddedТеперь загрузим вторую таблицу, теперь уже из CSV-файла. Для этого нажмем Данные > Новый источник данных и выберем источником в качестве источника CSV-файл:
На странице предпросмотра нажмём кнопку Добавить. Таблица появится в панели Запросы:
Image RemovedImage Added
Теперь, имея данные двух таблиц, мы можем воспользоваться SQL-запросом, который произведет объединение таблиц и запросов, рассчитает информацию об общем доходе, средней сумме дохода и количестве нужную нам информацию (общий доход, среднюю сумму дохода и количество продаж для каждого уникального продукта, отсортированную ) и отсортирует ее по общему доходу. Для этого необходимо сделать следующее:
Нажать кнопку SQL-преобразование в панели инструментов:
В открывшемся диалоге введите ввести название преобразования, SQL-запрос и нажмите нажать Добавить преобразование:
Image RemovedImage AddedРезультат вычислений отобразится в области предварительного просмотра:
Нажмите После выполнения всех необходимых преобразований нажмите кнопку Добавить запрос, чтобы добавить результирующую таблицу в модель данных. Таблица отобразится в списке доступных таблиц:
вас есть две таблицы - Продажи и Список продуктов, которые таблица Продажи с данными о продажах по нескольким странам, и вы хотите отобразить в отдельных колонках данные о всех проданных товарах и информацию об общей прибыли. При этом вы хотите сгруппировать данные по странам и отобразить их в порядке убывания. Для этого вы можете сделать следующее:
Нажмите кнопку SQL-преобразование:
Image RemovedВ открывшемся диалоге укажите название преобразования и введите SQL-запрос. В нашем примере мы будем использовать следующий запрос:
Блок кода language sqlSELECT "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"
– группирует данные по странам, чтобы суммировать данные отдельно для каждой страны.
Image RemovedORDER BY "Total_Profit" DESC
– упорядочивает результаты по общей прибыли в порядке убывания, благодаря чему страны с наибольшей прибылью оказываются вверху списка.
Нажмите Добавить преобразование. В итоговой таблице отобразятся результаты трансформации:
Image RemovedЕсли результат вас устраивает и никакие трансформации больше не нужны, нажмите кнопку Добавить запрос, чтобы добавить преобразованную таблицу в модель данных:
Image Removed
Если потребуется выполнить дополнительные преобразования, нажмите напротив названия таблицы и выберите пункт Изменить запрос в выпадающем меню. Откроется окно преобразований данных, где вы сможете внести необходимые изменения:
Image RemovedImage AddedПримечание |
---|
Если изменятся исходные данные в подключенном источнике, то всё, что было настроено в процессе преобразования, также обновится. |
Смотрите также