public function execute() { if (!
count($this->condition
)) { throw new InvalidMergeQueryException('Invalid merge query: no conditions'
);
} $select =
$this->connection->
select($this->conditionTable
) ->
condition($this->condition
);
$select->
addExpression('1'
);
if (!
$select->
execute()->
fetchField()) { try { $insert =
$this->connection->
insert($this->table
)->
fields($this->insertFields
);
if ($this->defaultFields
) { $insert->
useDefaults($this->defaultFields
);
}