Все ноды/Data/DataFrame Ops
DF: обновление
SQL UPDATE: задаёт значения колонок строк, соответствующих предикату. Если предикат пуст — обновляются все строки.
Тип в графе: df_update
Exec
Можно включить ветку ошибки (expose_error_output) и обработать сбой отдельным путём.
Порты можно разделить на исполнение и данные (split ports).
Как попробовать
Минимальный рабочий воркфлоу
- Исполнение + данные
Запускается сразу
Как применять
Присваивает значения колонкам у тех строк, которые попали под условие, — SQL UPDATE. Число строк не меняется: это правка на месте, а не отбор. Убрать строки умеет df_query, убрать или переименовать колонки — df_select.
Обычные задачи: проставить статус отобранным записям, нормализовать регистр перед схлопыванием дубликатов, пересчитать сумму с наценкой, заполнить пропуски значением по умолчанию.
Как это работает
«Where (предикат)» — то же выражение pandas, что и в df_query. Пустое поле означает «все строки», и это не ошибка, а рабочий режим.
«SET» — карта «колонка → значение». Число, строка или логическое значение записываются буквально.
Строка, начинающаяся с =, считается выражением по колонкам: =amount * 1.2, =price * qty.
Такое выражение вычисляется по всей таблице, но записывается только в строки, прошедшие условие.
Если колонки с указанным именем в таблице нет, она создаётся. У строк, не попавших под условие, она останется пустой.
Частые ошибки
- Значение, которое само начинается с
=. Оно уйдёт в вычислитель как выражение и уронит ноду. Записать текст вида=Xэтим полем нельзя. - Шаблоны. Ни в условии, ни в значениях
{{ … }}не раскрывается: оба поля уходят в pandas буквально. Значение из контекста запуска сюда не подставить. - Символы
@и__. Запрещены и в условии, и в=-выражениях, попытка использовать их отклоняется с ошибкой. - Пустая карта «SET». Граф не пройдёт проверку: нода без присваиваний бессмысленна.
- Условие, под которое не попала ни одна строка. Это не ошибка: таблица уходит дальше без изменений, а нода отчитывается успехом. Если ждали правок — сверьтесь с предпросмотром в журнале запуска.
Входы
| Порт | Провод | Данные | Примечания |
|---|---|---|---|
DataFramedf | Исполнение + данныеexecute_data | dataframe |
Выходы
| Порт | Провод | Данные | Примечания |
|---|---|---|---|
Successoutput | Исполнение + данныеexecute_data | dataframe | |
Erroron_error | Исполнение + данныеexecute_data | — | показывается, когда expose_error_output = true |
Настройки
| Поле | Тип | По умолчанию | Описание |
|---|---|---|---|
Where (предикат)where | string | "" | Необязательное pandas query-выражение, отбирающее целевые строки. Пусто = обновить все строки. |
SETset_values | object | — | Карта ``column → value``. Строки с префиксом ``=`` вычисляются в контексте строки (например, ``=col_a * 2``). Остальные значения присваиваются буквально. |
Общие поля
Эти три поля есть у каждой ноды: платформа добавляет их сама, а не автор ноды.
expose_error_output— Если включено, показывает выход выполнения для подключения нод, которые запускаются при сбое этого шага.split_ports_in— Показывать отдельные порты входа для выполнения и данных вместо одного объединённого.split_ports_out— Показывать отдельные порты выхода для выполнения и данных вместо одного объединённого.