diff options
| author | vitya-smirnov <[email protected]> | 2025-10-01 20:51:41 +0300 |
|---|---|---|
| committer | vitya-smirnov <[email protected]> | 2025-10-01 21:25:50 +0300 |
| commit | f3f7b33a285e94cb3e27aaa4d9b23b543ece4106 (patch) | |
| tree | 89740eeddb803123f1ed3d6b6f7be2bcd865f68c /yql/essentials/sql/v1/select.cpp | |
| parent | 5cfb01d33937d2b2e038abf3b50e04136dcf7496 (diff) | |
YQL-20307: Support inline subqueries
- Alter grammar to support inline subqueries.
- Support inline subqueries in `sql/v1` (translator).
- Introduce `sql/v1/proto_ast/parse_tree.h` for reusable parse tree predicates.
- Support inline subqueries in `sql/v1/format`.
- Support inline subqueries in `sql/v1/complete`.
- Add some SQL-tests.
- Pass all tests.
commit_hash:075b2240778d071e1c7542f912d3cc83019ef849
Diffstat (limited to 'yql/essentials/sql/v1/select.cpp')
| -rw-r--r-- | yql/essentials/sql/v1/select.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/yql/essentials/sql/v1/select.cpp b/yql/essentials/sql/v1/select.cpp index c6ba387e7bd..41689db592c 100644 --- a/yql/essentials/sql/v1/select.cpp +++ b/yql/essentials/sql/v1/select.cpp @@ -662,6 +662,10 @@ TNodePtr BuildSubqueryRef(TNodePtr subquery, const TString& alias, int tupleInde return new TSubqueryRefNode(std::move(subquery), alias, tupleIndex); } +bool IsSubqueryRef(const TSourcePtr& source) { + return dynamic_cast<const TSubqueryRefNode*>(source.Get()) != nullptr; +} + class TInvalidSubqueryRefNode: public ISource { public: TInvalidSubqueryRefNode(TPosition pos) |
