| set hive.mapred.mode=nonstrict; |
| set hive.explain.user=false; |
| SET hive.vectorized.execution.enabled=true; |
| set hive.fetch.task.conversion=none; |
| |
| create table decimal_tbl_1_orc (`dec` decimal(38,18)) |
| STORED AS ORC; |
| |
| insert into table decimal_tbl_1_orc values(55555); |
| |
| select * from decimal_tbl_1_orc; |
| |
| -- EXPLAIN |
| -- SELECT `dec`, round(null), round(null, 0), round(125, null), |
| -- round(1.0/0.0, 0), round(power(-1.0,0.5), 0) |
| -- FROM decimal_tbl_1_orc ORDER BY `dec`; |
| |
| -- SELECT `dec`, round(null), round(null, 0), round(125, null), |
| -- round(1.0/0.0, 0), round(power(-1.0,0.5), 0) |
| -- FROM decimal_tbl_1_orc ORDER BY `dec`; |
| |
| EXPLAIN VECTORIZATION DETAIL |
| SELECT |
| round(`dec`) as d, round(`dec`, 0), round(`dec`, 1), round(`dec`, 2), round(`dec`, 3), |
| round(`dec`, -1), round(`dec`, -2), round(`dec`, -3), round(`dec`, -4), |
| round(`dec`, -5), round(`dec`, -6), round(`dec`, -7), round(`dec`, -8) |
| FROM decimal_tbl_1_orc ORDER BY d; |
| |
| SELECT |
| round(`dec`) as d, round(`dec`, 0), round(`dec`, 1), round(`dec`, 2), round(`dec`, 3), |
| round(`dec`, -1), round(`dec`, -2), round(`dec`, -3), round(`dec`, -4), |
| round(`dec`, -5), round(`dec`, -6), round(`dec`, -7), round(`dec`, -8) |
| FROM decimal_tbl_1_orc ORDER BY d; |
| |
| create table decimal_tbl_2_orc (pos decimal(38,18), neg decimal(38,18)) |
| STORED AS ORC; |
| |
| insert into table decimal_tbl_2_orc values(125.315, -125.315); |
| |
| select * from decimal_tbl_2_orc; |
| |
| EXPLAIN VECTORIZATION DETAIL |
| SELECT |
| round(pos) as p, round(pos, 0), |
| round(pos, 1), round(pos, 2), round(pos, 3), round(pos, 4), |
| round(pos, -1), round(pos, -2), round(pos, -3), round(pos, -4), |
| round(neg), round(neg, 0), |
| round(neg, 1), round(neg, 2), round(neg, 3), round(neg, 4), |
| round(neg, -1), round(neg, -2), round(neg, -3), round(neg, -4) |
| FROM decimal_tbl_2_orc ORDER BY p; |
| |
| SELECT |
| round(pos) as p, round(pos, 0), |
| round(pos, 1), round(pos, 2), round(pos, 3), round(pos, 4), |
| round(pos, -1), round(pos, -2), round(pos, -3), round(pos, -4), |
| round(neg), round(neg, 0), |
| round(neg, 1), round(neg, 2), round(neg, 3), round(neg, 4), |
| round(neg, -1), round(neg, -2), round(neg, -3), round(neg, -4) |
| FROM decimal_tbl_2_orc ORDER BY p; |
| |
| create table decimal_tbl_3_orc (`dec` decimal(38,18)) |
| STORED AS ORC; |
| |
| insert into table decimal_tbl_3_orc values(3.141592653589793); |
| |
| select * from decimal_tbl_3_orc; |
| |
| EXPLAIN VECTORIZATION DETAIL |
| SELECT |
| round(`dec`, -15) as d, round(`dec`, -16), |
| round(`dec`, -13), round(`dec`, -14), |
| round(`dec`, -11), round(`dec`, -12), |
| round(`dec`, -9), round(`dec`, -10), |
| round(`dec`, -7), round(`dec`, -8), |
| round(`dec`, -5), round(`dec`, -6), |
| round(`dec`, -3), round(`dec`, -4), |
| round(`dec`, -1), round(`dec`, -2), |
| round(`dec`, 0), round(`dec`, 1), |
| round(`dec`, 2), round(`dec`, 3), |
| round(`dec`, 4), round(`dec`, 5), |
| round(`dec`, 6), round(`dec`, 7), |
| round(`dec`, 8), round(`dec`, 9), |
| round(`dec`, 10), round(`dec`, 11), |
| round(`dec`, 12), round(`dec`, 13), |
| round(`dec`, 13), round(`dec`, 14), |
| round(`dec`, 15), round(`dec`, 16) |
| FROM decimal_tbl_3_orc ORDER BY d; |
| |
| SELECT |
| round(`dec`, -15) as d, round(`dec`, -16), |
| round(`dec`, -13), round(`dec`, -14), |
| round(`dec`, -11), round(`dec`, -12), |
| round(`dec`, -9), round(`dec`, -10), |
| round(`dec`, -7), round(`dec`, -8), |
| round(`dec`, -5), round(`dec`, -6), |
| round(`dec`, -3), round(`dec`, -4), |
| round(`dec`, -1), round(`dec`, -2), |
| round(`dec`, 0), round(`dec`, 1), |
| round(`dec`, 2), round(`dec`, 3), |
| round(`dec`, 4), round(`dec`, 5), |
| round(`dec`, 6), round(`dec`, 7), |
| round(`dec`, 8), round(`dec`, 9), |
| round(`dec`, 10), round(`dec`, 11), |
| round(`dec`, 12), round(`dec`, 13), |
| round(`dec`, 13), round(`dec`, 14), |
| round(`dec`, 15), round(`dec`, 16) |
| FROM decimal_tbl_3_orc ORDER BY d; |
| |
| create table decimal_tbl_4_orc (pos decimal(38,18), neg decimal(38,18)) |
| STORED AS ORC; |
| |
| insert into table decimal_tbl_4_orc values(1809242.3151111344, -1809242.3151111344); |
| |
| select * from decimal_tbl_4_orc; |
| |
| EXPLAIN VECTORIZATION DETAIL |
| SELECT round(pos, 9) as p, round(neg, 9), round(1809242.3151111344BD, 9), round(-1809242.3151111344BD, 9) |
| FROM decimal_tbl_4_orc ORDER BY p; |
| |
| SELECT round(pos, 9) as p, round(neg, 9), round(1809242.3151111344BD, 9), round(-1809242.3151111344BD, 9) |
| FROM decimal_tbl_4_orc ORDER BY p; |