protected function _select(&$sql, &$bindParams)
{
$fields = array();
foreach ($this->fields as $field) {
$parts = explode('.@', $field, 2);
if (count($parts) == 1) {
$fields[] = $field;
} else {
list($tableName, $columnName) = $parts;
if (isset($this->_aliases[$tableName])) {
$tableName = $this->_aliases[$tableName];
}
$fields[] = str_replace('.@', '.', $field) . ' AS ' . $this->mapper->adapter->quoteColumnName($tableName . '@' . $columnName);
}
}
if ($this->distinct) {
$sql = 'SELECT ' . $this->mapper->adapter->distinct(implode(', ', $fields), implode(', ', $this->sortby));
} else {
$sql = 'SELECT ' . implode(', ', $fields);
}
}