From ed1e0907f7233710607960f6fd4bb1c4b70f0b66 Mon Sep 17 00:00:00 2001 From: Vitaly Stoyan Date: Wed, 26 Jun 2024 16:20:02 +0300 Subject: [PATCH] Subtraction for all dates (#5942) --- .../invoke_builtins/mkql_builtins_sub.cpp | 72 +++++--- .../sql/dq_file/part18/canondata/result.json | 18 +- .../sql/dq_file/part7/canondata/result.json | 36 ++-- .../sql/dq_file/part8/canondata/result.json | 18 +- .../hybrid_file/part10/canondata/result.json | 12 +- .../hybrid_file/part4/canondata/result.json | 12 +- .../hybrid_file/part5/canondata/result.json | 12 +- .../hybrid_file/part9/canondata/result.json | 12 +- .../tests/sql/sql2yql/canondata/result.json | 48 +++--- .../yql/tests/sql/suites/blocks/date_sub.sql | 82 ++++++++- .../sql/suites/blocks/date_sub_interval.sql | 16 +- .../blocks/date_sub_interval_scalar.sql | 17 +- .../sql/suites/blocks/date_sub_scalar.sql | 158 ++++++++++++++++-- .../part18/canondata/result.json | 24 +-- .../part7/canondata/result.json | 48 +++--- .../part8/canondata/result.json | 24 +-- 16 files changed, 433 insertions(+), 176 deletions(-) diff --git a/ydb/library/yql/minikql/invoke_builtins/mkql_builtins_sub.cpp b/ydb/library/yql/minikql/invoke_builtins/mkql_builtins_sub.cpp index 97e35217cbf8..f5c85fad013a 100644 --- a/ydb/library/yql/minikql/invoke_builtins/mkql_builtins_sub.cpp +++ b/ydb/library/yql/minikql/invoke_builtins/mkql_builtins_sub.cpp @@ -263,30 +263,27 @@ using TAnyDateTimeSubIntervalTz = TAnyDateTimeSubIntervalT void RegisterDateSub(IBuiltinFunctionRegistry& registry) { - static_assert(!(LeftTz && LeftBig), "Expect either Tz or Big date type"); - static_assert(!(RightTz && RightBig), "Expect either Tz or Big date type"); - using TDateLeft1 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateLeft2 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateLeft3 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateRight1 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateRight2 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateRight3 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; - using TOutput = std::conditional_t, NUdf::TDataType>; @@ -314,30 +311,27 @@ void RegisterDateSub(IBuiltinFunctionRegistry& registry) { template void RegisterDateSub(TKernelFamilyBase& owner) { - static_assert(!(LeftTz && LeftBig), "Expect either Tz or Big date type"); - static_assert(!(RightTz && RightBig), "Expect either Tz or Big date type"); - using TDateLeft1 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateLeft2 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateLeft3 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateRight1 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateRight2 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateRight3 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; - using TOutput = std::conditional_t, NUdf::TDataType>; @@ -366,11 +360,18 @@ void RegisterSub(IBuiltinFunctionRegistry& registry) { // NarrowDate minus BigDate RegisterDateSub(registry); RegisterDateSub(registry); + RegisterDateSub(registry); + RegisterDateSub(registry); // BigDate minus NarrowDate RegisterDateSub(registry); RegisterDateSub(registry); + RegisterDateSub(registry); + RegisterDateSub(registry); // BigDate minus BigDate RegisterDateSub(registry); + RegisterDateSub(registry); + RegisterDateSub(registry); + RegisterDateSub(registry); RegisterFunctionBinPolyOpt, NUdf::TDataType, NUdf::TDataType, TIntervalSubInterval, TBinaryArgsOptWithNullableResult>(registry, "Sub"); @@ -422,20 +423,32 @@ void RegisterSub(IBuiltinFunctionRegistry& registry) { NUdf::TDataType, TAnyDateTimeSubInterval, TBinaryArgsOptWithNullableResult>(registry, "Sub"); RegisterFunctionBinPolyOpt, NUdf::TDataType, NUdf::TDataType, TAnyDateTimeSubInterval, TBinaryArgsOptWithNullableResult>(registry, "Sub"); + + RegisterFunctionBinPolyOpt, NUdf::TDataType, + NUdf::TDataType, TAnyDateTimeSubIntervalTz, TBinaryArgsOptWithNullableResult>(registry, "Sub"); + RegisterFunctionBinPolyOpt, NUdf::TDataType, + NUdf::TDataType, TAnyDateTimeSubIntervalTz, TBinaryArgsOptWithNullableResult>(registry, "Sub"); + RegisterFunctionBinPolyOpt, NUdf::TDataType, + NUdf::TDataType, TAnyDateTimeSubIntervalTz, TBinaryArgsOptWithNullableResult>(registry, "Sub"); + + RegisterFunctionBinPolyOpt, NUdf::TDataType, + NUdf::TDataType, TAnyDateTimeSubIntervalTz, TBinaryArgsOptWithNullableResult>(registry, "Sub"); + RegisterFunctionBinPolyOpt, NUdf::TDataType, + NUdf::TDataType, TAnyDateTimeSubIntervalTz, TBinaryArgsOptWithNullableResult>(registry, "Sub"); + RegisterFunctionBinPolyOpt, NUdf::TDataType, + NUdf::TDataType, TAnyDateTimeSubIntervalTz, TBinaryArgsOptWithNullableResult>(registry, "Sub"); } template void RegisterDateSubInterval(TKernelFamilyBase& owner) { - static_assert(!(Tz && BigDate), "Expect either Tz or Big date type"); - using TDateLeft1 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateLeft2 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TDateLeft3 = std::conditional_t, + std::conditional_t, NUdf::TDataType>, std::conditional_t, NUdf::TDataType>>; using TIntervalRight = std::conditional_t(*family); RegisterDateSub(*family); + RegisterDateSub(*family); + RegisterDateSub(*family); // BigDate minus NarrowDate RegisterDateSub(*family); RegisterDateSub(*family); + RegisterDateSub(*family); + RegisterDateSub(*family); // BigDate minus BigDate RegisterDateSub(*family); + RegisterDateSub(*family); + RegisterDateSub(*family); + RegisterDateSub(*family); RegisterDateSubInterval(*family); RegisterDateSubInterval(*family); RegisterDateSubInterval(*family); + RegisterDateSubInterval(*family); RegisterDateSubInterval(*family); RegisterDateSubInterval(*family); RegisterDateSubInterval(*family); + RegisterDateSubInterval(*family); RegisterIntervalSubInterval(*family); RegisterIntervalSubInterval(*family); diff --git a/ydb/library/yql/tests/sql/dq_file/part18/canondata/result.json b/ydb/library/yql/tests/sql/dq_file/part18/canondata/result.json index 737fcb5cc5ff..65361d39f091 100644 --- a/ydb/library/yql/tests/sql/dq_file/part18/canondata/result.json +++ b/ydb/library/yql/tests/sql/dq_file/part18/canondata/result.json @@ -500,23 +500,23 @@ "test.test[blocks-date_group_by--Results]": [], "test.test[blocks-date_sub_scalar--Analyze]": [ { - "checksum": "e8b45a26a526cda4ea5cd83ccb9bb9a2", - "size": 4921, - "uri": "https://{canondata_backend}/1775319/21cd8e1d0bdd8f0ad1770c8084252628093f80c4/resource.tar.gz#test.test_blocks-date_sub_scalar--Analyze_/plan.txt" + "checksum": "ddf86e4b60e819f8f4118ad27fc4c801", + "size": 7069, + "uri": "https://{canondata_backend}/1814674/a71168cd07531a101c5ea9b29bae77a3ea1d4693/resource.tar.gz#test.test_blocks-date_sub_scalar--Analyze_/plan.txt" } ], "test.test[blocks-date_sub_scalar--Debug]": [ { - "checksum": "2b97fb68ddd427edcbae52184c895a7e", - "size": 8752, - "uri": "https://{canondata_backend}/1937027/65db208ba11cd5e90b41bbb5f58baaa54793e4a9/resource.tar.gz#test.test_blocks-date_sub_scalar--Debug_/opt.yql_patched" + "checksum": "a26d82b13177303908d8c42e2e906c7a", + "size": 14123, + "uri": "https://{canondata_backend}/1814674/a71168cd07531a101c5ea9b29bae77a3ea1d4693/resource.tar.gz#test.test_blocks-date_sub_scalar--Debug_/opt.yql_patched" } ], "test.test[blocks-date_sub_scalar--Plan]": [ { - "checksum": "e8b45a26a526cda4ea5cd83ccb9bb9a2", - "size": 4921, - "uri": "https://{canondata_backend}/1775319/21cd8e1d0bdd8f0ad1770c8084252628093f80c4/resource.tar.gz#test.test_blocks-date_sub_scalar--Plan_/plan.txt" + "checksum": "ddf86e4b60e819f8f4118ad27fc4c801", + "size": 7069, + "uri": "https://{canondata_backend}/1814674/a71168cd07531a101c5ea9b29bae77a3ea1d4693/resource.tar.gz#test.test_blocks-date_sub_scalar--Plan_/plan.txt" } ], "test.test[blocks-date_sub_scalar--Results]": [], diff --git a/ydb/library/yql/tests/sql/dq_file/part7/canondata/result.json b/ydb/library/yql/tests/sql/dq_file/part7/canondata/result.json index ebeb5ba8ce24..026e8cf3fd29 100644 --- a/ydb/library/yql/tests/sql/dq_file/part7/canondata/result.json +++ b/ydb/library/yql/tests/sql/dq_file/part7/canondata/result.json @@ -492,45 +492,45 @@ "test.test[blocks-combine_hashed_minmax_nested--Results]": [], "test.test[blocks-date_sub_interval--Analyze]": [ { - "checksum": "f795c30f6ae91198b611e02645f3918d", - "size": 5207, - "uri": "https://{canondata_backend}/1031349/0db72bc457fea36ffb7a9c3f14265b7fe8fa48b0/resource.tar.gz#test.test_blocks-date_sub_interval--Analyze_/plan.txt" + "checksum": "b7b0a23c218f14fbddbddefe816c2dd1", + "size": 5366, + "uri": "https://{canondata_backend}/1923547/d0656f40d6f986668efaffc1efccda90baa2359a/resource.tar.gz#test.test_blocks-date_sub_interval--Analyze_/plan.txt" } ], "test.test[blocks-date_sub_interval--Debug]": [ { - "checksum": "c3a372224afca3357970d0266f46aef2", - "size": 3349, - "uri": "https://{canondata_backend}/1942100/0f7afbcaf8b5511a96df7f526006d3ea93b53c26/resource.tar.gz#test.test_blocks-date_sub_interval--Debug_/opt.yql_patched" + "checksum": "a6ed9b4e2552afca78b25c3c73c108e7", + "size": 4213, + "uri": "https://{canondata_backend}/1923547/d0656f40d6f986668efaffc1efccda90baa2359a/resource.tar.gz#test.test_blocks-date_sub_interval--Debug_/opt.yql_patched" } ], "test.test[blocks-date_sub_interval--Plan]": [ { - "checksum": "f795c30f6ae91198b611e02645f3918d", - "size": 5207, - "uri": "https://{canondata_backend}/1031349/0db72bc457fea36ffb7a9c3f14265b7fe8fa48b0/resource.tar.gz#test.test_blocks-date_sub_interval--Plan_/plan.txt" + "checksum": "b7b0a23c218f14fbddbddefe816c2dd1", + "size": 5366, + "uri": "https://{canondata_backend}/1923547/d0656f40d6f986668efaffc1efccda90baa2359a/resource.tar.gz#test.test_blocks-date_sub_interval--Plan_/plan.txt" } ], "test.test[blocks-date_sub_interval--Results]": [], "test.test[blocks-date_sub_interval_scalar--Analyze]": [ { - "checksum": "a7735abc118d08f4ff9334ba7d36d92c", - "size": 4973, - "uri": "https://{canondata_backend}/1031349/0db72bc457fea36ffb7a9c3f14265b7fe8fa48b0/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Analyze_/plan.txt" + "checksum": "13bf2d11ab5bc079dc45be91f40f6dd3", + "size": 5060, + "uri": "https://{canondata_backend}/1923547/d0656f40d6f986668efaffc1efccda90baa2359a/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Analyze_/plan.txt" } ], "test.test[blocks-date_sub_interval_scalar--Debug]": [ { - "checksum": "b615905f66127bdf25e71648590c768c", - "size": 4671, - "uri": "https://{canondata_backend}/1942100/0f7afbcaf8b5511a96df7f526006d3ea93b53c26/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Debug_/opt.yql_patched" + "checksum": "8906faa3ab76a1f5fb932b6e1efb7f36", + "size": 5650, + "uri": "https://{canondata_backend}/1923547/d0656f40d6f986668efaffc1efccda90baa2359a/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Debug_/opt.yql_patched" } ], "test.test[blocks-date_sub_interval_scalar--Plan]": [ { - "checksum": "a7735abc118d08f4ff9334ba7d36d92c", - "size": 4973, - "uri": "https://{canondata_backend}/1031349/0db72bc457fea36ffb7a9c3f14265b7fe8fa48b0/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Plan_/plan.txt" + "checksum": "13bf2d11ab5bc079dc45be91f40f6dd3", + "size": 5060, + "uri": "https://{canondata_backend}/1923547/d0656f40d6f986668efaffc1efccda90baa2359a/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Plan_/plan.txt" } ], "test.test[blocks-date_sub_interval_scalar--Results]": [], diff --git a/ydb/library/yql/tests/sql/dq_file/part8/canondata/result.json b/ydb/library/yql/tests/sql/dq_file/part8/canondata/result.json index 6b7f474fab7a..b5b82833a85b 100644 --- a/ydb/library/yql/tests/sql/dq_file/part8/canondata/result.json +++ b/ydb/library/yql/tests/sql/dq_file/part8/canondata/result.json @@ -773,23 +773,23 @@ "test.test[blocks-combine_hashed_some--Results]": [], "test.test[blocks-date_sub--Analyze]": [ { - "checksum": "73c99eb3c8d812f93e81e41e2e528965", - "size": 5233, - "uri": "https://{canondata_backend}/1031349/d2bfbcf3a83f9468e81d8ee6f41bc03f4a4ed82c/resource.tar.gz#test.test_blocks-date_sub--Analyze_/plan.txt" + "checksum": "29abcf6f7856c6c5aad292c345095270", + "size": 6356, + "uri": "https://{canondata_backend}/1920236/35006d56f02bf6830f30b607dded3342ab6fe947/resource.tar.gz#test.test_blocks-date_sub--Analyze_/plan.txt" } ], "test.test[blocks-date_sub--Debug]": [ { - "checksum": "c17c40c1e6d7a734556fd44ea4b6e653", - "size": 6259, - "uri": "https://{canondata_backend}/1942100/a3bffaeb27f79f639a5d43f1ae80b9f2b22f2f0b/resource.tar.gz#test.test_blocks-date_sub--Debug_/opt.yql_patched" + "checksum": "bdc3d25bfbdd3746424797ba7df9ab74", + "size": 9603, + "uri": "https://{canondata_backend}/1920236/35006d56f02bf6830f30b607dded3342ab6fe947/resource.tar.gz#test.test_blocks-date_sub--Debug_/opt.yql_patched" } ], "test.test[blocks-date_sub--Plan]": [ { - "checksum": "73c99eb3c8d812f93e81e41e2e528965", - "size": 5233, - "uri": "https://{canondata_backend}/1031349/d2bfbcf3a83f9468e81d8ee6f41bc03f4a4ed82c/resource.tar.gz#test.test_blocks-date_sub--Plan_/plan.txt" + "checksum": "29abcf6f7856c6c5aad292c345095270", + "size": 6356, + "uri": "https://{canondata_backend}/1920236/35006d56f02bf6830f30b607dded3342ab6fe947/resource.tar.gz#test.test_blocks-date_sub--Plan_/plan.txt" } ], "test.test[blocks-date_sub--Results]": [], diff --git a/ydb/library/yql/tests/sql/hybrid_file/part10/canondata/result.json b/ydb/library/yql/tests/sql/hybrid_file/part10/canondata/result.json index 8f5e2a7cbcaa..7c01d05a0065 100644 --- a/ydb/library/yql/tests/sql/hybrid_file/part10/canondata/result.json +++ b/ydb/library/yql/tests/sql/hybrid_file/part10/canondata/result.json @@ -687,16 +687,16 @@ ], "test.test[blocks-date_sub_scalar--Debug]": [ { - "checksum": "05dee9a44e286862c95f70e8415572cd", - "size": 13110, - "uri": "https://{canondata_backend}/1773845/6e12a9ad8ca1393c67d99ce6c0f78660e657fae0/resource.tar.gz#test.test_blocks-date_sub_scalar--Debug_/opt.yql_patched" + "checksum": "eb79b95cc8ab6ece8cda0d373ffc3cb7", + "size": 24887, + "uri": "https://{canondata_backend}/1814674/9488849b466e427dfdcf2f4a65bd7c6352ffabd6/resource.tar.gz#test.test_blocks-date_sub_scalar--Debug_/opt.yql_patched" } ], "test.test[blocks-date_sub_scalar--Plan]": [ { - "checksum": "0e278aa62af2bd9061a3135d4033a8c0", - "size": 6542, - "uri": "https://{canondata_backend}/1775319/41ea8ee5e004d52a40ece3b87cdacf535917057e/resource.tar.gz#test.test_blocks-date_sub_scalar--Plan_/plan.txt" + "checksum": "12018a00b8a92db5880e226557881949", + "size": 11319, + "uri": "https://{canondata_backend}/1814674/9488849b466e427dfdcf2f4a65bd7c6352ffabd6/resource.tar.gz#test.test_blocks-date_sub_scalar--Plan_/plan.txt" } ], "test.test[blocks-finalize_hashed_keys--Debug]": [ diff --git a/ydb/library/yql/tests/sql/hybrid_file/part4/canondata/result.json b/ydb/library/yql/tests/sql/hybrid_file/part4/canondata/result.json index 402aea288302..4ca46636abc8 100644 --- a/ydb/library/yql/tests/sql/hybrid_file/part4/canondata/result.json +++ b/ydb/library/yql/tests/sql/hybrid_file/part4/canondata/result.json @@ -477,16 +477,16 @@ ], "test.test[blocks-date_sub_interval_scalar--Debug]": [ { - "checksum": "8155a028416fdf986dde196232a5a741", - "size": 6163, - "uri": "https://{canondata_backend}/1942100/1e9a5e72f569c854fa2389b79a6e91ed71db2f5b/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Debug_/opt.yql_patched" + "checksum": "0a77cd778737887789483148115ad8ae", + "size": 8296, + "uri": "https://{canondata_backend}/1920236/24fc177ad15ffb34261b5dbf2e1c5c96c4ad7faf/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Debug_/opt.yql_patched" } ], "test.test[blocks-date_sub_interval_scalar--Plan]": [ { - "checksum": "f79404042d811b0f6195ec3cf6c645be", - "size": 7176, - "uri": "https://{canondata_backend}/1936273/9c25c1aac526c657fc25cc1af9b214bf525c0659/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Plan_/plan.txt" + "checksum": "d7dc5671b9ef733316dfc1d26ae18c1f", + "size": 7299, + "uri": "https://{canondata_backend}/1920236/24fc177ad15ffb34261b5dbf2e1c5c96c4ad7faf/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Plan_/plan.txt" } ], "test.test[blocks-distinct_pure_all--Debug]": [ diff --git a/ydb/library/yql/tests/sql/hybrid_file/part5/canondata/result.json b/ydb/library/yql/tests/sql/hybrid_file/part5/canondata/result.json index a71222a0c295..127819a28aed 100644 --- a/ydb/library/yql/tests/sql/hybrid_file/part5/canondata/result.json +++ b/ydb/library/yql/tests/sql/hybrid_file/part5/canondata/result.json @@ -673,16 +673,16 @@ ], "test.test[blocks-date_sub--Debug]": [ { - "checksum": "da041e1cc6caa36005c82279fe0a8b8a", - "size": 12915, - "uri": "https://{canondata_backend}/1942525/c4169cd301b521101f82e07b34309e2548dabd34/resource.tar.gz#test.test_blocks-date_sub--Debug_/opt.yql_patched" + "checksum": "8192eec0dab2a5cf273775616b1d9c1c", + "size": 26399, + "uri": "https://{canondata_backend}/1937429/45c0ed022ecb2172e5287c350269fdad6a7b0868/resource.tar.gz#test.test_blocks-date_sub--Debug_/opt.yql_patched" } ], "test.test[blocks-date_sub--Plan]": [ { - "checksum": "672e0da1456232a1ae0f207f8a4dac92", - "size": 7392, - "uri": "https://{canondata_backend}/1031349/c5569b831bf22c66f9424d8defd59570d28bd884/resource.tar.gz#test.test_blocks-date_sub--Plan_/plan.txt" + "checksum": "8e2ffde4b139fbcf23538af8042d8ce4", + "size": 15073, + "uri": "https://{canondata_backend}/1937429/45c0ed022ecb2172e5287c350269fdad6a7b0868/resource.tar.gz#test.test_blocks-date_sub--Plan_/plan.txt" } ], "test.test[blocks-div_uint64--Debug]": [ diff --git a/ydb/library/yql/tests/sql/hybrid_file/part9/canondata/result.json b/ydb/library/yql/tests/sql/hybrid_file/part9/canondata/result.json index 2b2e18c0ade8..04163f60a7c2 100644 --- a/ydb/library/yql/tests/sql/hybrid_file/part9/canondata/result.json +++ b/ydb/library/yql/tests/sql/hybrid_file/part9/canondata/result.json @@ -715,16 +715,16 @@ ], "test.test[blocks-date_sub_interval--Debug]": [ { - "checksum": "be79964eab6562fe70dd32c5c9673786", - "size": 6176, - "uri": "https://{canondata_backend}/1942100/5a4da50f1957e2b46d86ab842611060f06cdead0/resource.tar.gz#test.test_blocks-date_sub_interval--Debug_/opt.yql_patched" + "checksum": "93733eefab62414e77bed94ba229d395", + "size": 8618, + "uri": "https://{canondata_backend}/1923547/7035195682d1d389b130d309e647c0e6bae0996a/resource.tar.gz#test.test_blocks-date_sub_interval--Debug_/opt.yql_patched" } ], "test.test[blocks-date_sub_interval--Plan]": [ { - "checksum": "aae45f9035acd48ed1e089d2e39f13f0", - "size": 7241, - "uri": "https://{canondata_backend}/1871102/526b18ac05288a370f0d65fd7546863807cbe236/resource.tar.gz#test.test_blocks-date_sub_interval--Plan_/plan.txt" + "checksum": "919e326b2e3937c8297e4cfd45696886", + "size": 9179, + "uri": "https://{canondata_backend}/1923547/7035195682d1d389b130d309e647c0e6bae0996a/resource.tar.gz#test.test_blocks-date_sub_interval--Plan_/plan.txt" } ], "test.test[blocks-minmax_strings_filter--Debug]": [ diff --git a/ydb/library/yql/tests/sql/sql2yql/canondata/result.json b/ydb/library/yql/tests/sql/sql2yql/canondata/result.json index a3b98cdeb2f9..1de51e533c4b 100644 --- a/ydb/library/yql/tests/sql/sql2yql/canondata/result.json +++ b/ydb/library/yql/tests/sql/sql2yql/canondata/result.json @@ -3704,30 +3704,30 @@ ], "test_sql2yql.test[blocks-date_sub]": [ { - "checksum": "f346f48ea966aab7af0199a17dc7edf5", - "size": 18200, - "uri": "https://{canondata_backend}/1775319/aad0c11816cec8971c5571f0c536af10c4645fe1/resource.tar.gz#test_sql2yql.test_blocks-date_sub_/sql.yql" + "checksum": "f1c2a5fae328334f7c62aa0f402a322e", + "size": 32610, + "uri": "https://{canondata_backend}/1917492/87646e70c8da604f6060735f71bc3c8019f30219/resource.tar.gz#test_sql2yql.test_blocks-date_sub_/sql.yql" } ], "test_sql2yql.test[blocks-date_sub_interval]": [ { - "checksum": "0d4c452c32ab8381a16fad0a9ae0f7c5", - "size": 3731, - "uri": "https://{canondata_backend}/1775319/aad0c11816cec8971c5571f0c536af10c4645fe1/resource.tar.gz#test_sql2yql.test_blocks-date_sub_interval_/sql.yql" + "checksum": "0992d88a2aa1f15bc8d295a82eebccd7", + "size": 6245, + "uri": "https://{canondata_backend}/1917492/87646e70c8da604f6060735f71bc3c8019f30219/resource.tar.gz#test_sql2yql.test_blocks-date_sub_interval_/sql.yql" } ], "test_sql2yql.test[blocks-date_sub_interval_scalar]": [ { - "checksum": "6c597c845df0969720b4387732e7f0dc", - "size": 8994, - "uri": "https://{canondata_backend}/1775319/aad0c11816cec8971c5571f0c536af10c4645fe1/resource.tar.gz#test_sql2yql.test_blocks-date_sub_interval_scalar_/sql.yql" + "checksum": "32e0dad48b567cb9f896e7ab5be01d30", + "size": 11680, + "uri": "https://{canondata_backend}/1917492/87646e70c8da604f6060735f71bc3c8019f30219/resource.tar.gz#test_sql2yql.test_blocks-date_sub_interval_scalar_/sql.yql" } ], "test_sql2yql.test[blocks-date_sub_scalar]": [ { - "checksum": "8218abfc3e24fae7a44893996d4dff24", - "size": 34832, - "uri": "https://{canondata_backend}/1775319/aad0c11816cec8971c5571f0c536af10c4645fe1/resource.tar.gz#test_sql2yql.test_blocks-date_sub_scalar_/sql.yql" + "checksum": "51362cd74665dc836ba73b756477ada3", + "size": 63228, + "uri": "https://{canondata_backend}/1917492/87646e70c8da604f6060735f71bc3c8019f30219/resource.tar.gz#test_sql2yql.test_blocks-date_sub_scalar_/sql.yql" } ], "test_sql2yql.test[blocks-date_top_sort]": [ @@ -22912,30 +22912,30 @@ ], "test_sql_format.test[blocks-date_sub]": [ { - "checksum": "13b6219401a42fc93b87125e97130060", - "size": 1496, - "uri": "https://{canondata_backend}/1775319/aad0c11816cec8971c5571f0c536af10c4645fe1/resource.tar.gz#test_sql_format.test_blocks-date_sub_/formatted.sql" + "checksum": "19d46c7e9efbde5a3b0fae1da8929884", + "size": 2825, + "uri": "https://{canondata_backend}/1917492/87646e70c8da604f6060735f71bc3c8019f30219/resource.tar.gz#test_sql_format.test_blocks-date_sub_/formatted.sql" } ], "test_sql_format.test[blocks-date_sub_interval]": [ { - "checksum": "aec549da34039175634b6c705f6c757e", - "size": 275, - "uri": "https://{canondata_backend}/1775319/aad0c11816cec8971c5571f0c536af10c4645fe1/resource.tar.gz#test_sql_format.test_blocks-date_sub_interval_/formatted.sql" + "checksum": "367f2774dfbc3755230e9e4b3f60e54d", + "size": 485, + "uri": "https://{canondata_backend}/1917492/87646e70c8da604f6060735f71bc3c8019f30219/resource.tar.gz#test_sql_format.test_blocks-date_sub_interval_/formatted.sql" } ], "test_sql_format.test[blocks-date_sub_interval_scalar]": [ { - "checksum": "46d1789b591d5385b8e09e4887f248f0", - "size": 1383, - "uri": "https://{canondata_backend}/1775319/aad0c11816cec8971c5571f0c536af10c4645fe1/resource.tar.gz#test_sql_format.test_blocks-date_sub_interval_scalar_/formatted.sql" + "checksum": "aa10ac59472dcc01567eac217a89c60a", + "size": 2014, + "uri": "https://{canondata_backend}/1917492/87646e70c8da604f6060735f71bc3c8019f30219/resource.tar.gz#test_sql_format.test_blocks-date_sub_interval_scalar_/formatted.sql" } ], "test_sql_format.test[blocks-date_sub_scalar]": [ { - "checksum": "60df251d2b521e94c418fcd2015ed590", - "size": 7681, - "uri": "https://{canondata_backend}/1775319/aad0c11816cec8971c5571f0c536af10c4645fe1/resource.tar.gz#test_sql_format.test_blocks-date_sub_scalar_/formatted.sql" + "checksum": "3cb54c18bdd42485b475415aaaacc814", + "size": 14650, + "uri": "https://{canondata_backend}/1917492/87646e70c8da604f6060735f71bc3c8019f30219/resource.tar.gz#test_sql_format.test_blocks-date_sub_scalar_/formatted.sql" } ], "test_sql_format.test[blocks-date_top_sort]": [ diff --git a/ydb/library/yql/tests/sql/suites/blocks/date_sub.sql b/ydb/library/yql/tests/sql/suites/blocks/date_sub.sql index db8f6483bf13..ec839a419989 100644 --- a/ydb/library/yql/tests/sql/suites/blocks/date_sub.sql +++ b/ydb/library/yql/tests/sql/suites/blocks/date_sub.sql @@ -1,4 +1,5 @@ USE plato; +pragma yt.DisableOptimizers="OutHorizontalJoin,HorizontalJoin,MultiHorizontalJoin,FuseMultiOutsWithOuterMaps"; SELECT a.na - b.na, @@ -10,7 +11,10 @@ SELECT a.na - b.wa, a.na - b.wd, a.na - b.wt, - + a.na - b.waz, + a.na - b.wdz, + a.na - b.wtz, + a.naz - b.na, a.naz - b.naz, a.naz - b.nd, @@ -20,6 +24,9 @@ SELECT a.naz - b.wa, a.naz - b.wd, a.naz - b.wt, + a.naz - b.waz, + a.naz - b.wdz, + a.naz - b.wtz, a.nd - b.na, a.nd - b.naz, @@ -30,6 +37,9 @@ SELECT a.nd - b.wa, a.nd - b.wd, a.nd - b.wt, + a.nd - b.waz, + a.nd - b.wdz, + a.nd - b.wtz, a.ndz - b.na, a.ndz - b.naz, @@ -40,6 +50,9 @@ SELECT a.ndz - b.wa, a.ndz - b.wd, a.ndz - b.wt, + a.ndz - b.waz, + a.ndz - b.wdz, + a.ndz - b.wtz, a.nt - b.na, a.nt - b.naz, @@ -50,6 +63,9 @@ SELECT a.nt - b.wa, a.nt - b.wd, a.nt - b.wt, + a.nt - b.waz, + a.nt - b.wdz, + a.nt - b.wtz, a.ntz - b.na, a.ntz - b.naz, @@ -60,7 +76,13 @@ SELECT a.ntz - b.wa, a.ntz - b.wd, a.ntz - b.wt, - + a.ntz - b.waz, + a.ntz - b.wdz, + a.ntz - b.wtz + +FROM Dates as a CROSS JOIN Dates as b; + +SELECT a.wa - b.na, a.wa - b.naz, a.wa - b.nd, @@ -70,6 +92,9 @@ SELECT a.wa - b.wa, a.wa - b.wd, a.wa - b.wt, + a.wa - b.waz, + a.wa - b.wdz, + a.wa - b.wtz, a.wd - b.na, a.wd - b.naz, @@ -80,7 +105,10 @@ SELECT a.wd - b.wa, a.wd - b.wd, a.wd - b.wt, - + a.wd - b.waz, + a.wd - b.wdz, + a.wd - b.wtz, + a.wt - b.na, a.wt - b.naz, a.wt - b.nd, @@ -89,7 +117,49 @@ SELECT a.wt - b.ntz, a.wt - b.wa, a.wt - b.wd, - a.wt - b.wt - -FROM Dates as a CROSS JOIN Dates as b + a.wt - b.wt, + a.wt - b.waz, + a.wt - b.wdz, + a.wt - b.wtz, + + a.waz - b.na, + a.waz - b.naz, + a.waz - b.nd, + a.waz - b.ndz, + a.waz - b.nt, + a.waz - b.ntz, + a.waz - b.wa, + a.waz - b.wd, + a.waz - b.wt, + a.waz - b.waz, + a.waz - b.wdz, + a.waz - b.wtz, + + a.wdz - b.na, + a.wdz - b.naz, + a.wdz - b.nd, + a.wdz - b.ndz, + a.wdz - b.nt, + a.wdz - b.ntz, + a.wdz - b.wa, + a.wdz - b.wd, + a.wdz - b.wt, + a.wdz - b.waz, + a.wdz - b.wdz, + a.wdz - b.wtz, + + a.wtz - b.na, + a.wtz - b.naz, + a.wtz - b.nd, + a.wtz - b.ndz, + a.wtz - b.nt, + a.wtz - b.ntz, + a.wtz - b.wa, + a.wtz - b.wd, + a.wtz - b.wt, + a.wtz - b.waz, + a.wtz - b.wdz, + a.wtz - b.wtz, + +FROM Dates as a CROSS JOIN Dates as b; diff --git a/ydb/library/yql/tests/sql/suites/blocks/date_sub_interval.sql b/ydb/library/yql/tests/sql/suites/blocks/date_sub_interval.sql index b6fd2f1a5c01..9e9c6ce95b68 100644 --- a/ydb/library/yql/tests/sql/suites/blocks/date_sub_interval.sql +++ b/ydb/library/yql/tests/sql/suites/blocks/date_sub_interval.sql @@ -12,6 +12,20 @@ SELECT a.nt - b.ni, a.nt - b.wi, a.ntz - b.ni, - a.ntz - b.wi + a.ntz - b.wi, + + a.wa - b.ni, + a.wa - b.wi, + a.waz - b.ni, + a.waz - b.wi, + a.wd - b.ni, + a.wd - b.wi, + a.wdz - b.ni, + a.wdz - b.wi, + a.wt - b.ni, + a.wt - b.wi, + a.wtz - b.ni, + a.wtz - b.wi + FROM Dates as a CROSS JOIN Dates as b diff --git a/ydb/library/yql/tests/sql/suites/blocks/date_sub_interval_scalar.sql b/ydb/library/yql/tests/sql/suites/blocks/date_sub_interval_scalar.sql index 482044d423f1..8b5aee81fa51 100644 --- a/ydb/library/yql/tests/sql/suites/blocks/date_sub_interval_scalar.sql +++ b/ydb/library/yql/tests/sql/suites/blocks/date_sub_interval_scalar.sql @@ -1,4 +1,5 @@ USE plato; +pragma yt.DisableOptimizers="OutHorizontalJoin,HorizontalJoin,MultiHorizontalJoin,FuseMultiOutsWithOuterMaps"; SELECT Date("2000-01-01") - ni, @@ -18,7 +19,13 @@ SELECT Datetime64("1900-01-01T03:04:05Z") - ni, Datetime64("1900-01-01T03:04:05Z") - wi, Timestamp64("1900-01-01T03:04:05.678912Z") - ni, - Timestamp64("1900-01-01T03:04:05.678912Z") - wi + Timestamp64("1900-01-01T03:04:05.678912Z") - wi, + TzDate32("1900-01-01,Europe/Moscow") - ni, + TzDate32("1900-01-01,Europe/Moscow") - wi, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - ni, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - wi, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - ni, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - wi FROM Dates; SELECT @@ -39,7 +46,13 @@ SELECT wd - Interval("P1D"), wd - Interval64("P1D"), wt - Interval("P1D"), - wt - Interval64("P1D") + wt - Interval64("P1D"), + waz - Interval("P1D"), + waz - Interval64("P1D"), + wdz - Interval("P1D"), + wdz - Interval64("P1D"), + wtz - Interval("P1D"), + wtz - Interval64("P1D") FROM Dates; diff --git a/ydb/library/yql/tests/sql/suites/blocks/date_sub_scalar.sql b/ydb/library/yql/tests/sql/suites/blocks/date_sub_scalar.sql index bcfc362070bb..efe5c86006b9 100644 --- a/ydb/library/yql/tests/sql/suites/blocks/date_sub_scalar.sql +++ b/ydb/library/yql/tests/sql/suites/blocks/date_sub_scalar.sql @@ -1,4 +1,5 @@ USE plato; +pragma yt.DisableOptimizers="OutHorizontalJoin,HorizontalJoin,MultiHorizontalJoin,FuseMultiOutsWithOuterMaps"; SELECT Date("2000-01-01") - na, @@ -10,7 +11,10 @@ SELECT Date("2000-01-01") - wa, Date("2000-01-01") - wd, Date("2000-01-01") - wt, - + Date("2000-01-01") - waz, + Date("2000-01-01") - wdz, + Date("2000-01-01") - wtz, + TzDate("2000-01-01,Europe/Moscow") - na, TzDate("2000-01-01,Europe/Moscow") - naz, TzDate("2000-01-01,Europe/Moscow") - nd, @@ -20,6 +24,9 @@ SELECT TzDate("2000-01-01,Europe/Moscow") - wa, TzDate("2000-01-01,Europe/Moscow") - wd, TzDate("2000-01-01,Europe/Moscow") - wt, + TzDate("2000-01-01,Europe/Moscow") - waz, + TzDate("2000-01-01,Europe/Moscow") - wdz, + TzDate("2000-01-01,Europe/Moscow") - wtz, Datetime("2000-01-01T03:04:05Z") - na, Datetime("2000-01-01T03:04:05Z") - naz, @@ -30,6 +37,9 @@ SELECT Datetime("2000-01-01T03:04:05Z") - wa, Datetime("2000-01-01T03:04:05Z") - wd, Datetime("2000-01-01T03:04:05Z") - wt, + Datetime("2000-01-01T03:04:05Z") - waz, + Datetime("2000-01-01T03:04:05Z") - wdz, + Datetime("2000-01-01T03:04:05Z") - wtz, TzDatetime("2000-01-01T03:04:05,Europe/Moscow") - na, TzDatetime("2000-01-01T03:04:05,Europe/Moscow") - naz, @@ -40,6 +50,9 @@ SELECT TzDatetime("2000-01-01T03:04:05,Europe/Moscow") - wa, TzDatetime("2000-01-01T03:04:05,Europe/Moscow") - wd, TzDatetime("2000-01-01T03:04:05,Europe/Moscow") - wt, + TzDatetime("2000-01-01T03:04:05,Europe/Moscow") - waz, + TzDatetime("2000-01-01T03:04:05,Europe/Moscow") - wdz, + TzDatetime("2000-01-01T03:04:05,Europe/Moscow") - wtz, Timestamp("2000-01-01T03:04:05.678912Z") - na, Timestamp("2000-01-01T03:04:05.678912Z") - naz, @@ -50,6 +63,9 @@ SELECT Timestamp("2000-01-01T03:04:05.678912Z") - wa, Timestamp("2000-01-01T03:04:05.678912Z") - wd, Timestamp("2000-01-01T03:04:05.678912Z") - wt, + Timestamp("2000-01-01T03:04:05.678912Z") - waz, + Timestamp("2000-01-01T03:04:05.678912Z") - wdz, + Timestamp("2000-01-01T03:04:05.678912Z") - wtz, TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") - na, TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") - naz, @@ -60,7 +76,13 @@ SELECT TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") - wa, TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") - wd, TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") - wt, - + TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") - waz, + TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") - wdz, + TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow") - wtz, + +FROM Dates; + +SELECT Date32("1900-01-01") - na, Date32("1900-01-01") - naz, Date32("1900-01-01") - nd, @@ -70,6 +92,9 @@ SELECT Date32("1900-01-01") - wa, Date32("1900-01-01") - wd, Date32("1900-01-01") - wt, + Date32("1900-01-01") - waz, + Date32("1900-01-01") - wdz, + Date32("1900-01-01") - wtz, Datetime64("1900-01-01T03:04:05Z") - na, Datetime64("1900-01-01T03:04:05Z") - naz, @@ -80,7 +105,10 @@ SELECT Datetime64("1900-01-01T03:04:05Z") - wa, Datetime64("1900-01-01T03:04:05Z") - wd, Datetime64("1900-01-01T03:04:05Z") - wt, - + Datetime64("1900-01-01T03:04:05Z") - waz, + Datetime64("1900-01-01T03:04:05Z") - wdz, + Datetime64("1900-01-01T03:04:05Z") - wtz, + Timestamp64("1900-01-01T03:04:05.678912Z") - na, Timestamp64("1900-01-01T03:04:05.678912Z") - naz, Timestamp64("1900-01-01T03:04:05.678912Z") - nd, @@ -89,8 +117,50 @@ SELECT Timestamp64("1900-01-01T03:04:05.678912Z") - ntz, Timestamp64("1900-01-01T03:04:05.678912Z") - wa, Timestamp64("1900-01-01T03:04:05.678912Z") - wd, - Timestamp64("1900-01-01T03:04:05.678912Z") - wt - + Timestamp64("1900-01-01T03:04:05.678912Z") - wt, + Timestamp64("1900-01-01T03:04:05.678912Z") - waz, + Timestamp64("1900-01-01T03:04:05.678912Z") - wdz, + Timestamp64("1900-01-01T03:04:05.678912Z") - wtz, + + TzDate32("1900-01-01,Europe/Moscow") - na, + TzDate32("1900-01-01,Europe/Moscow") - naz, + TzDate32("1900-01-01,Europe/Moscow") - nd, + TzDate32("1900-01-01,Europe/Moscow") - ndz, + TzDate32("1900-01-01,Europe/Moscow") - nt, + TzDate32("1900-01-01,Europe/Moscow") - ntz, + TzDate32("1900-01-01,Europe/Moscow") - wa, + TzDate32("1900-01-01,Europe/Moscow") - wd, + TzDate32("1900-01-01,Europe/Moscow") - wt, + TzDate32("1900-01-01,Europe/Moscow") - waz, + TzDate32("1900-01-01,Europe/Moscow") - wdz, + TzDate32("1900-01-01,Europe/Moscow") - wtz, + + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - na, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - naz, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - nd, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - ndz, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - nt, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - ntz, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - wa, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - wd, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - wt, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - waz, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - wdz, + TzDatetime64("1900-01-01T03:04:05,Europe/Moscow") - wtz, + + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - na, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - naz, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - nd, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - ndz, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - nt, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - ntz, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - wa, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - wd, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - wt, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - waz, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - wdz, + TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") - wtz + FROM Dates; SELECT @@ -103,7 +173,10 @@ SELECT wa - Date("2000-01-01"), wd - Date("2000-01-01"), wt - Date("2000-01-01"), - + waz - Date("2000-01-01"), + wdz - Date("2000-01-01"), + wtz - Date("2000-01-01"), + na - TzDate("2000-01-01,Europe/Moscow"), naz - TzDate("2000-01-01,Europe/Moscow"), nd - TzDate("2000-01-01,Europe/Moscow"), @@ -113,6 +186,9 @@ SELECT wa - TzDate("2000-01-01,Europe/Moscow"), wd - TzDate("2000-01-01,Europe/Moscow"), wt - TzDate("2000-01-01,Europe/Moscow"), + waz - TzDate("2000-01-01,Europe/Moscow"), + wdz - TzDate("2000-01-01,Europe/Moscow"), + wtz - TzDate("2000-01-01,Europe/Moscow"), na - Datetime("2000-01-01T03:04:05Z"), naz - Datetime("2000-01-01T03:04:05Z"), @@ -123,6 +199,9 @@ SELECT wa - Datetime("2000-01-01T03:04:05Z"), wd - Datetime("2000-01-01T03:04:05Z"), wt - Datetime("2000-01-01T03:04:05Z"), + waz - Datetime("2000-01-01T03:04:05Z"), + wdz - Datetime("2000-01-01T03:04:05Z"), + wtz - Datetime("2000-01-01T03:04:05Z"), na - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"), naz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"), @@ -133,6 +212,9 @@ SELECT wa - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"), wd - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"), wt - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"), + waz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"), + wdz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"), + wtz - TzDatetime("2000-01-01T03:04:05,Europe/Moscow"), na - Timestamp("2000-01-01T03:04:05.678912Z"), naz - Timestamp("2000-01-01T03:04:05.678912Z"), @@ -143,6 +225,9 @@ SELECT wa - Timestamp("2000-01-01T03:04:05.678912Z"), wd - Timestamp("2000-01-01T03:04:05.678912Z"), wt - Timestamp("2000-01-01T03:04:05.678912Z"), + waz - Timestamp("2000-01-01T03:04:05.678912Z"), + wdz - Timestamp("2000-01-01T03:04:05.678912Z"), + wtz - Timestamp("2000-01-01T03:04:05.678912Z"), na - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"), naz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"), @@ -153,7 +238,12 @@ SELECT wa - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"), wd - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"), wt - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"), - + waz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"), + wdz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"), + wtz - TzTimestamp("2000-01-01T03:04:05.678912,Europe/Moscow"), +FROM Dates; + +SELECT na - Date32("1900-01-01"), naz - Date32("1900-01-01"), nd - Date32("1900-01-01"), @@ -163,6 +253,9 @@ SELECT wa - Date32("1900-01-01"), wd - Date32("1900-01-01"), wt - Date32("1900-01-01"), + waz - Date32("1900-01-01"), + wdz - Date32("1900-01-01"), + wtz - Date32("1900-01-01"), na - Datetime64("1900-01-01T03:04:05Z"), naz - Datetime64("1900-01-01T03:04:05Z"), @@ -173,7 +266,10 @@ SELECT wa - Datetime64("1900-01-01T03:04:05Z"), wd - Datetime64("1900-01-01T03:04:05Z"), wt - Datetime64("1900-01-01T03:04:05Z"), - + waz - Datetime64("1900-01-01T03:04:05Z"), + wdz - Datetime64("1900-01-01T03:04:05Z"), + wtz - Datetime64("1900-01-01T03:04:05Z"), + na - Timestamp64("1900-01-01T03:04:05.678912Z"), naz - Timestamp64("1900-01-01T03:04:05.678912Z"), nd - Timestamp64("1900-01-01T03:04:05.678912Z"), @@ -182,7 +278,49 @@ SELECT ntz - Timestamp64("1900-01-01T03:04:05.678912Z"), wa - Timestamp64("1900-01-01T03:04:05.678912Z"), wd - Timestamp64("1900-01-01T03:04:05.678912Z"), - wt - Timestamp64("1900-01-01T03:04:05.678912Z") - + wt - Timestamp64("1900-01-01T03:04:05.678912Z"), + waz - Timestamp64("1900-01-01T03:04:05.678912Z"), + wdz - Timestamp64("1900-01-01T03:04:05.678912Z"), + wtz - Timestamp64("1900-01-01T03:04:05.678912Z"), + + na - TzDate32("1900-01-01,Europe/Moscow"), + naz - TzDate32("1900-01-01,Europe/Moscow"), + nd - TzDate32("1900-01-01,Europe/Moscow"), + ndz - TzDate32("1900-01-01,Europe/Moscow"), + nt - TzDate32("1900-01-01,Europe/Moscow"), + ntz - TzDate32("1900-01-01,Europe/Moscow"), + wa - TzDate32("1900-01-01,Europe/Moscow"), + wd - TzDate32("1900-01-01,Europe/Moscow"), + wt - TzDate32("1900-01-01,Europe/Moscow"), + waz - TzDate32("1900-01-01,Europe/Moscow"), + wdz - TzDate32("1900-01-01,Europe/Moscow"), + wtz - TzDate32("1900-01-01,Europe/Moscow"), + + na - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + naz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + nd - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + ndz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + nt - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + ntz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + wa - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + wd - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + wt - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + waz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + wdz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + wtz - TzDatetime64("1900-01-01T03:04:05,Europe/Moscow"), + + na - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + naz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + nd - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + ndz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + nt - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + ntz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + wa - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + wd - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + wt - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + waz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + wdz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow"), + wtz - TzTimestamp64("1900-01-01T03:04:05.678912,Europe/Moscow") + FROM Dates; diff --git a/ydb/library/yql/tests/sql/yt_native_file/part18/canondata/result.json b/ydb/library/yql/tests/sql/yt_native_file/part18/canondata/result.json index 718b9f9d2518..a84a81839d36 100644 --- a/ydb/library/yql/tests/sql/yt_native_file/part18/canondata/result.json +++ b/ydb/library/yql/tests/sql/yt_native_file/part18/canondata/result.json @@ -454,30 +454,30 @@ ], "test.test[blocks-date_sub_scalar--Debug]": [ { - "checksum": "3ba36ed0ad5a1f824bfe0b267fc842ba", - "size": 13039, - "uri": "https://{canondata_backend}/1942100/977b836f807d2b39508e2ee0606842a99261a1da/resource.tar.gz#test.test_blocks-date_sub_scalar--Debug_/opt.yql" + "checksum": "71759878d02489b52cf9cc903fb44fe6", + "size": 19556, + "uri": "https://{canondata_backend}/1937429/45b62dc8690b9f212c440cd9ce32dca44fce59af/resource.tar.gz#test.test_blocks-date_sub_scalar--Debug_/opt.yql" } ], "test.test[blocks-date_sub_scalar--Peephole]": [ { - "checksum": "65e869fd6dad9bbd260d02f822940acc", - "size": 12550, - "uri": "https://{canondata_backend}/1942100/977b836f807d2b39508e2ee0606842a99261a1da/resource.tar.gz#test.test_blocks-date_sub_scalar--Peephole_/opt.yql" + "checksum": "b5d450d73d9434908f19aeac0e9ec353", + "size": 25242, + "uri": "https://{canondata_backend}/1937429/45b62dc8690b9f212c440cd9ce32dca44fce59af/resource.tar.gz#test.test_blocks-date_sub_scalar--Peephole_/opt.yql" } ], "test.test[blocks-date_sub_scalar--Plan]": [ { - "checksum": "2cd32367f80d9ffb8f5c42ada4821811", - "size": 6540, - "uri": "https://{canondata_backend}/1031349/4e6b79fa7e2c60c62db83c7b0d3ad7c26db3e07c/resource.tar.gz#test.test_blocks-date_sub_scalar--Plan_/plan.txt" + "checksum": "9f660c7db711e98f11cc276c1646f46a", + "size": 12629, + "uri": "https://{canondata_backend}/1937429/45b62dc8690b9f212c440cd9ce32dca44fce59af/resource.tar.gz#test.test_blocks-date_sub_scalar--Plan_/plan.txt" } ], "test.test[blocks-date_sub_scalar--Results]": [ { - "checksum": "4efad65c7cde8cbe6cd47113e837f7f6", - "size": 51479, - "uri": "https://{canondata_backend}/1871102/e156ef9d10ae5a3aee8ce3273e7322fb66517cc8/resource.tar.gz#test.test_blocks-date_sub_scalar--Results_/results.txt" + "checksum": "6d7b822e98ce8cf49686af00a2ac344b", + "size": 91850, + "uri": "https://{canondata_backend}/1937429/45b62dc8690b9f212c440cd9ce32dca44fce59af/resource.tar.gz#test.test_blocks-date_sub_scalar--Results_/results.txt" } ], "test.test[blocks-filter_partial_expr--Debug]": [ diff --git a/ydb/library/yql/tests/sql/yt_native_file/part7/canondata/result.json b/ydb/library/yql/tests/sql/yt_native_file/part7/canondata/result.json index 4610b0449b98..42d2994cc3c1 100644 --- a/ydb/library/yql/tests/sql/yt_native_file/part7/canondata/result.json +++ b/ydb/library/yql/tests/sql/yt_native_file/part7/canondata/result.json @@ -485,58 +485,58 @@ ], "test.test[blocks-date_sub_interval--Debug]": [ { - "checksum": "fbbd840e071344a0d014a44a1b15d755", - "size": 6106, - "uri": "https://{canondata_backend}/1917492/6e3fe95b344b1161124e8c0d3faf97a0245f23af/resource.tar.gz#test.test_blocks-date_sub_interval--Debug_/opt.yql" + "checksum": "bd69f35ad3ea5f2a3bad7ece0654ecd3", + "size": 8548, + "uri": "https://{canondata_backend}/1917492/459458b44c8265b2f7214664f39b5a3ff6ed29d1/resource.tar.gz#test.test_blocks-date_sub_interval--Debug_/opt.yql" } ], "test.test[blocks-date_sub_interval--Peephole]": [ { - "checksum": "9699d06d34ec284d90e58a1d3e69ffb3", - "size": 6313, - "uri": "https://{canondata_backend}/1917492/6e3fe95b344b1161124e8c0d3faf97a0245f23af/resource.tar.gz#test.test_blocks-date_sub_interval--Peephole_/opt.yql" + "checksum": "27796d3148dd254acacce59186a5929a", + "size": 9089, + "uri": "https://{canondata_backend}/1917492/459458b44c8265b2f7214664f39b5a3ff6ed29d1/resource.tar.gz#test.test_blocks-date_sub_interval--Peephole_/opt.yql" } ], "test.test[blocks-date_sub_interval--Plan]": [ { - "checksum": "e23af43a05bd72ba0d384f4d97897543", - "size": 7241, - "uri": "https://{canondata_backend}/1871102/63bc29b45eaa043298f78a3d01a7794475174959/resource.tar.gz#test.test_blocks-date_sub_interval--Plan_/plan.txt" + "checksum": "51e9f9ba78e8dc0e3017f7d8f61f235e", + "size": 9179, + "uri": "https://{canondata_backend}/1917492/459458b44c8265b2f7214664f39b5a3ff6ed29d1/resource.tar.gz#test.test_blocks-date_sub_interval--Plan_/plan.txt" } ], "test.test[blocks-date_sub_interval--Results]": [ { - "checksum": "b8a07b38d67c42796cf54d342ddad081", - "size": 6138, - "uri": "https://{canondata_backend}/1900335/bd6c7c57c7cbffe4c815a9e399efee57e9f68a68/resource.tar.gz#test.test_blocks-date_sub_interval--Results_/results.txt" + "checksum": "bb3a498bcd3c35a32c43ed0acdf16149", + "size": 12220, + "uri": "https://{canondata_backend}/1889210/bd004525e88f1c6e39560bd470cf49f93d1e64d3/resource.tar.gz#test.test_blocks-date_sub_interval--Results_/results.txt" } ], "test.test[blocks-date_sub_interval_scalar--Debug]": [ { - "checksum": "ffad1242a8a24f1a80a3e68b655a18bd", - "size": 6092, - "uri": "https://{canondata_backend}/1917492/6e3fe95b344b1161124e8c0d3faf97a0245f23af/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Debug_/opt.yql" + "checksum": "6d8eed7516d873503ae32004af793e9e", + "size": 6515, + "uri": "https://{canondata_backend}/1917492/459458b44c8265b2f7214664f39b5a3ff6ed29d1/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Debug_/opt.yql" } ], "test.test[blocks-date_sub_interval_scalar--Peephole]": [ { - "checksum": "9806da668fb80aba630bc7dcadac733c", - "size": 5569, - "uri": "https://{canondata_backend}/1917492/6e3fe95b344b1161124e8c0d3faf97a0245f23af/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Peephole_/opt.yql" + "checksum": "8a12815f094780419d695314e126e1c3", + "size": 7968, + "uri": "https://{canondata_backend}/1917492/459458b44c8265b2f7214664f39b5a3ff6ed29d1/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Peephole_/opt.yql" } ], "test.test[blocks-date_sub_interval_scalar--Plan]": [ { - "checksum": "c28e45d0f81615fe6344f89c392cdcdc", - "size": 7174, - "uri": "https://{canondata_backend}/1689644/80b616663fb2c16aa8de3d761fd8bf8793b9b1e4/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Plan_/plan.txt" + "checksum": "2cd7a0fe97673d44bc998f454b47aa52", + "size": 9437, + "uri": "https://{canondata_backend}/1917492/459458b44c8265b2f7214664f39b5a3ff6ed29d1/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Plan_/plan.txt" } ], "test.test[blocks-date_sub_interval_scalar--Results]": [ { - "checksum": "2bdacd094bfd3374a6cf60342b8de137", - "size": 18314, - "uri": "https://{canondata_backend}/1900335/bd6c7c57c7cbffe4c815a9e399efee57e9f68a68/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Results_/results.txt" + "checksum": "f390501e4e253b622daf09023c845142", + "size": 24594, + "uri": "https://{canondata_backend}/1889210/bd004525e88f1c6e39560bd470cf49f93d1e64d3/resource.tar.gz#test.test_blocks-date_sub_interval_scalar--Results_/results.txt" } ], "test.test[blocks-interval_add_interval--Debug]": [ diff --git a/ydb/library/yql/tests/sql/yt_native_file/part8/canondata/result.json b/ydb/library/yql/tests/sql/yt_native_file/part8/canondata/result.json index 9aa1675d5e26..7cde95a47a3b 100644 --- a/ydb/library/yql/tests/sql/yt_native_file/part8/canondata/result.json +++ b/ydb/library/yql/tests/sql/yt_native_file/part8/canondata/result.json @@ -802,30 +802,30 @@ ], "test.test[blocks-date_sub--Debug]": [ { - "checksum": "2e709d040cc2760b37d1bb3f8a17b6e8", - "size": 12845, - "uri": "https://{canondata_backend}/1942525/0fbe2d908f8d6540999d15fe8d2dda28b38a1394/resource.tar.gz#test.test_blocks-date_sub--Debug_/opt.yql" + "checksum": "a227b4e007fcfaa65ca3ae2c57cde4b5", + "size": 20835, + "uri": "https://{canondata_backend}/1917492/60bb589ab4dbd498104a76581e71daca34af021d/resource.tar.gz#test.test_blocks-date_sub--Debug_/opt.yql" } ], "test.test[blocks-date_sub--Peephole]": [ { - "checksum": "d1e07928449dfea05a4fc930c1ad43c6", - "size": 14125, - "uri": "https://{canondata_backend}/1942525/0fbe2d908f8d6540999d15fe8d2dda28b38a1394/resource.tar.gz#test.test_blocks-date_sub--Peephole_/opt.yql" + "checksum": "bdb435d1b2823cbab09f6a2541303794", + "size": 22902, + "uri": "https://{canondata_backend}/1917492/60bb589ab4dbd498104a76581e71daca34af021d/resource.tar.gz#test.test_blocks-date_sub--Peephole_/opt.yql" } ], "test.test[blocks-date_sub--Plan]": [ { - "checksum": "ecdbdcc80f39e226f19ce437cc17310e", - "size": 7392, - "uri": "https://{canondata_backend}/1775319/ef67e8c3bb734d742073157cc9bc3b8f6a04fad5/resource.tar.gz#test.test_blocks-date_sub--Plan_/plan.txt" + "checksum": "3f9cd66ef6cea36b7ad6bcc8b7cb2c49", + "size": 12292, + "uri": "https://{canondata_backend}/1917492/60bb589ab4dbd498104a76581e71daca34af021d/resource.tar.gz#test.test_blocks-date_sub--Plan_/plan.txt" } ], "test.test[blocks-date_sub--Results]": [ { - "checksum": "620ab0e85411d5cde65628d92ba6329c", - "size": 25169, - "uri": "https://{canondata_backend}/1900335/022692338168d2d1b3c06dbd9c2be2ecced30cb7/resource.tar.gz#test.test_blocks-date_sub--Results_/results.txt" + "checksum": "519cf36b1f6884ede41a9a7f13d5fc70", + "size": 44958, + "uri": "https://{canondata_backend}/1917492/60bb589ab4dbd498104a76581e71daca34af021d/resource.tar.gz#test.test_blocks-date_sub--Results_/results.txt" } ], "test.test[blocks-filter_expr--Debug]": [