| 27 | } |
| 28 | |
| 29 | std::vector<std::string> getColumnNames(const expression_vector& exprs, |
| 30 | const std::vector<std::string>& aliases) { |
| 31 | std::vector<std::string> columnNames; |
| 32 | for (auto i = 0u; i < exprs.size(); ++i) { |
| 33 | if (aliases[i].empty()) { |
| 34 | columnNames.push_back(exprs[i]->toString()); |
| 35 | } else { |
| 36 | columnNames.push_back(aliases[i]); |
| 37 | } |
| 38 | } |
| 39 | return columnNames; |
| 40 | } |
| 41 | |
| 42 | static void validateOrderByFollowedBySkipOrLimitInWithClause( |
| 43 | const BoundProjectionBody& boundProjectionBody) { |
no test coverage detected