blob: 8a2a0d77bb25104cbc7f272238b8ba60dfba0c96 [file] [log] [blame]
--! qt:dataset:alltypesorc
set hive.explain.user=false;
set hive.fetch.task.conversion=none;
set hive.stats.column.autogather=true;
CREATE TABLE decimal_vgby STORED AS ORC AS
SELECT cdouble, CAST (((cdouble*22.1)/37) AS DECIMAL(20,10)) AS cdecimal1,
CAST (((cdouble*9.3)/13) AS DECIMAL(23,14)) AS cdecimal2,
cint
FROM alltypesorc;
-- Add a single NULL row that will come from ORC as isRepeated.
insert into decimal_vgby values (NULL, NULL, NULL, NULL);
SET hive.vectorized.execution.enabled=true;
-- SORT_QUERY_RESULTS
-- First only do simple aggregations that output primitives only
EXPLAIN VECTORIZATION DETAIL
SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2)
FROM decimal_vgby
GROUP BY cint
HAVING COUNT(*) > 1;
SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2)
FROM decimal_vgby
GROUP BY cint
HAVING COUNT(*) > 1;
-- Now add the others...
EXPLAIN VECTORIZATION DETAIL
SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1), AVG(cdecimal1), STDDEV_POP(cdecimal1), STDDEV_SAMP(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2), AVG(cdecimal2), STDDEV_POP(cdecimal2), STDDEV_SAMP(cdecimal2)
FROM decimal_vgby
GROUP BY cint
HAVING COUNT(*) > 1;
SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1), AVG(cdecimal1), STDDEV_POP(cdecimal1), STDDEV_SAMP(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2), AVG(cdecimal2), STDDEV_POP(cdecimal2), STDDEV_SAMP(cdecimal2)
FROM decimal_vgby
GROUP BY cint
HAVING COUNT(*) > 1;
-- DECIMAL_64
CREATE TABLE decimal_vgby_small STORED AS TEXTFILE AS
SELECT cdouble, CAST (((cdouble*22.1)/37) AS DECIMAL(11,5)) AS cdecimal1,
CAST (((cdouble*9.3)/13) AS DECIMAL(16,0)) AS cdecimal2,
cint
FROM alltypesorc;
-- Add a single NULL row that will come from ORC as isRepeated.
insert into decimal_vgby_small values (NULL, NULL, NULL, NULL);
EXPLAIN VECTORIZATION DETAIL
SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2)
FROM decimal_vgby_small
GROUP BY cint
HAVING COUNT(*) > 1;
SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2)
FROM decimal_vgby_small
GROUP BY cint
HAVING COUNT(*) > 1;
SELECT SUM(HASH(*))
FROM (SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2)
FROM decimal_vgby_small
GROUP BY cint) q;
-- Now add the others...
EXPLAIN VECTORIZATION DETAIL
SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1), AVG(cdecimal1), STDDEV_POP(cdecimal1), STDDEV_SAMP(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2), AVG(cdecimal2), STDDEV_POP(cdecimal2), STDDEV_SAMP(cdecimal2)
FROM decimal_vgby_small
GROUP BY cint
HAVING COUNT(*) > 1;
SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1), AVG(cdecimal1), STDDEV_POP(cdecimal1), STDDEV_SAMP(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2), AVG(cdecimal2), STDDEV_POP(cdecimal2), STDDEV_SAMP(cdecimal2)
FROM decimal_vgby_small
GROUP BY cint
HAVING COUNT(*) > 1;
SELECT SUM(HASH(*))
FROM (SELECT cint,
COUNT(cdecimal1), MAX(cdecimal1), MIN(cdecimal1), SUM(cdecimal1), AVG(cdecimal1), STDDEV_POP(cdecimal1), STDDEV_SAMP(cdecimal1),
COUNT(cdecimal2), MAX(cdecimal2), MIN(cdecimal2), SUM(cdecimal2), AVG(cdecimal2), STDDEV_POP(cdecimal2), STDDEV_SAMP(cdecimal2)
FROM decimal_vgby_small
GROUP BY cint) q;