Задача и предварительные условия
Прочитайте ограниченный набор записей SQL одним запросом SELECT и создайте проверочный CSV.
В примере используются демонстрационные данные и настройки. Проверьте ожидаемый результат в своей среде до подключения рабочих получателей. Идентификаторы demo_* условны: выберите собственные учебные подключения или источники в редакторе. JSON ниже показывает структуру блоков и связей, а не готовый архив потока для переноса.
Подключение demo_sql — условная учебная база SQL. Все адреса, пользователи и секреты настраиваются в менеджере подключений, а не в JSON схемы.
Учебные входные данные
| order_id | status | amount |
|---|---|---|
| 101 | open | 120 |
| 102 | closed | 70 |
| 103 | open | 30 |
Блоки, связи и точные настройки
Схема примера 13: блоков — 2, связей — 1. Идентификаторы узлов и порты настроенной схемы сохранены.
Добавьте перечисленные блоки в конструкторе, откройте свойства каждого и задайте эти значения. Имена demo_* обозначают учебные источники и подключения.
| Блок | Настройка |
|---|---|
| 1 Подключение sql |
|
| 2 Экспорт данных out |
|
Связи портов
- sql
out→ outin
Полная конфигурация схемы в JSON
{
"version": 3,
"nodes": [
{
"id": "sql",
"type": "connection",
"label": "sql",
"config": {
"role": "source",
"connection_id": "demo_sql",
"external": {
"source_mode": "query",
"query": "SELECT order_id, amount FROM demo_orders WHERE status = 'open' ORDER BY order_id"
}
}
},
{
"id": "out",
"type": "export",
"label": "out",
"config": {
"format": "csv",
"filename": "open_orders",
"destination": "download",
"delimiter": ";",
"timezone": "Europe/Kyiv"
}
}
],
"edges": [
{
"source": "sql",
"target": "out",
"source_port": "out",
"target_port": "in"
}
]
}Ожидаемый результат
| order_id | amount |
|---|---|
| 101 | 120 |
| 103 | 30 |
Две записи с общей суммой amount 150. ORDER BY делает порядок проверочного файла определённым.
Запуск и проверка
- Заранее создайте demo_orders с показанными строками в учебной базе и подключение demo_sql.
- Проверьте подключение и выберите режим запроса в блоке-источнике.
- Запустите и проверьте ID 101/103; закрытая запись 102 не должна попасть в результат.
Частые ошибки
- Чтение допускает один неизменяющий запрос; не вставляйте DDL или несколько команд.
- Имена таблиц и схем зависят от базы; при необходимости используйте schema.demo_orders.
- Без ORDER BY порядок результата SQL не гарантируется.