|
@@ 23-25 (lines=3) @@
|
| 20 |
|
foreach ($select as $item) { |
| 21 |
|
if ('colref' === $item['expr_type']) { |
| 22 |
|
$value = $this->getValueWithoutQuotes($item); |
| 23 |
|
if (isset($item['alias']) && is_array($item['alias'])) { |
| 24 |
|
$value .= ' AS '.$this->getValueWithoutQuotes($item['alias'], 'name'); |
| 25 |
|
} |
| 26 |
|
$s[] = $value; |
| 27 |
|
} elseif ('aggregate_function' === $item['expr_type'] || 'function' === $item['expr_type']) { |
| 28 |
|
$function = strtoupper($item['base_expr']); |
|
@@ 30-32 (lines=3) @@
|
| 27 |
|
} elseif ('aggregate_function' === $item['expr_type'] || 'function' === $item['expr_type']) { |
| 28 |
|
$function = strtoupper($item['base_expr']); |
| 29 |
|
$value = $function.'('.implode(', ', array_column($item['sub_tree'], 'base_expr')).')'; |
| 30 |
|
if (isset($item['alias']) && is_array($item['alias'])) { |
| 31 |
|
$value .= ' AS '.$item['alias']['name']; |
| 32 |
|
} |
| 33 |
|
|
| 34 |
|
$generator = new Generator('DB'); |
| 35 |
|
$generator->addFunction('raw', [$value]); |