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