method
public
abstract
SqlHelper::prepareMerge()
Класс: \Bitrix\Main\DB\SqlHelper
Сигнатура
public abstract prepareMerge(string $tableName, array<string|int, mixed> $primaryFields, array<string|int, mixed> $insertFields, array<string|int, mixed> $updateFields) : array<string|int, mixed>
Описание
Формирует строки для SQL-команды MERGE для указанной таблицы.
Параметры
$tableName
string
Имя таблицы.
$primaryFields
array<string|int, mixed>
Array("column")[] Список столбцов первичного ключа.
$insertFields
array<string|int, mixed>
Array("column" => $value)[] Что вставить.
$updateFields
array<string|int, mixed>
Array("column" => $value)[] Как обновить.
Возвращаемое значение
array<string|int, mixed>
Как применяется в SqlHelper
SqlHelper::prepareMerge() — метод класса \Bitrix\Main\DB\SqlHelper модуля «Главный модуль».
Метод объекта: сначала нужен экземпляр SqlHelper.
use Bitrix\Main\DB\SqlHelper;
/** @var SqlHelper $object */
$tableName = '';
$primaryFields = [];
$insertFields = [];
$updateFields = [];
$result = $object->prepareMerge($tableName, $primaryFields, $insertFields, $updateFields);
// $result: array<string|int, mixed>Другие методы SqlHelper
addDaysToDateTime()Возвращает функцию для добавления временного интервала в днях к $from.addSecondsToDateTime()Возвращает функцию для добавления временного интервала в секундах к $from.castToChar()Возвращает выражение CAST для преобразования поля или выражения в строкуconvertDateField()convertDatetimeField()convertFromDb()Возвращает $value, преобразованный в тип согласно типу $field.convertFromDbDate()convertFromDbDateTime()convertFromDbFloat()convertFromDbInteger()convertFromDbString()convertFromDbText()
prepareMerge() есть и у других классов модуля «Главный модуль»: MssqlSqlHelper, MysqliSqlHelper, OracleSqlHelper, PgsqlSqlHelper.
Исходный файл: source/main/lib/db/sqlhelper.php:422

