public function updateQuery($model, $field, $select)
{
$p = null;
if ($model->_references) {
$p = $model->table_alias ?: $model->table;
}
$fieldName = $field->actual() ?: $field->short_name;
if ($field instanceof Field_SQL_Relation) {
$select->join($field->rightTable . '.' . $field->rightField, $field->leftField, $field->joinKind, $field->joinAlias);
} elseif ($field instanceof Field_SQL_Expression) {
return $select->field($field->getExpression($model), $field->short_name);
} else {
$select->field($fieldName, $field->table() ?: $p, $field->short_name);
}
return $field;
}