diff options
| author | aneporada <[email protected]> | 2024-11-27 19:39:16 +0300 |
|---|---|---|
| committer | aneporada <[email protected]> | 2024-11-27 20:30:55 +0300 |
| commit | 5ae93cf6a49513cc999774c6545bcfff16a32f59 (patch) | |
| tree | 680c05eeb9c20a9859dc64aeb7c3453208751982 /yql/essentials/sql/v1/select.cpp | |
| parent | da01e3e90a5307aae60beecbbb94131a88d617be (diff) | |
EmitUnionMerge - pragma to emit UnionMerge instead of UnionAll
commit_hash:ba3439438c76ed616e4f1059d0ff83ebb4a16b9a
Diffstat (limited to 'yql/essentials/sql/v1/select.cpp')
| -rw-r--r-- | yql/essentials/sql/v1/select.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/yql/essentials/sql/v1/select.cpp b/yql/essentials/sql/v1/select.cpp index 552a74cb07a..d2e4c0a8749 100644 --- a/yql/essentials/sql/v1/select.cpp +++ b/yql/essentials/sql/v1/select.cpp @@ -2800,7 +2800,11 @@ public: TNodePtr Build(TContext& ctx) override { TPtr res; if (QuantifierAll) { - res = ctx.PositionalUnionAll ? Y("UnionAllPositional") : Y("UnionAll"); + if (ctx.EmitUnionMerge) { + res = ctx.PositionalUnionAll ? Y("UnionMergePositional") : Y("UnionMerge"); + } else { + res = ctx.PositionalUnionAll ? Y("UnionAllPositional") : Y("UnionAll"); + } } else { res = ctx.PositionalUnionAll ? Y("UnionPositional") : Y("Union"); } @@ -2848,8 +2852,8 @@ private: }; TSourcePtr BuildUnion( - TPosition pos, - TVector<TSourcePtr>&& sources, + TPosition pos, + TVector<TSourcePtr>&& sources, bool quantifierAll, const TWriteSettings& settings ) { |
