mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-01-10 07:12:54 +00:00
Signed-off-by: discord9 <discord9@163.com> poc: step aggr query Signed-off-by: discord9 <discord9@163.com> feat: mvp poc stuff Signed-off-by: discord9 <discord9@163.com> test: sqlness Signed-off-by: discord9 <discord9@163.com> chore: import missing Signed-off-by: discord9 <discord9@163.com> feat: support first/last_value Signed-off-by: discord9 <discord9@163.com> fix: check also include first/last value Signed-off-by: discord9 <discord9@163.com> chore: clean up after rebase feat: optimize yes! fix: alias qualifled test: more testcases chore: qualified column chore: per review
90 lines
1.2 KiB
SQL
90 lines
1.2 KiB
SQL
CREATE TABLE integers(
|
|
host STRING PRIMARY KEY,
|
|
i BIGINT,
|
|
ts TIMESTAMP TIME INDEX
|
|
) PARTITION ON COLUMNS (host) (
|
|
host < '550-A',
|
|
host >= '550-A'
|
|
AND host < '550-W',
|
|
host >= '550-W'
|
|
);
|
|
|
|
INSERT INTO integers (host, i, ts) VALUES
|
|
('550-A', 1, '2023-01-01 00:00:00'),
|
|
('550-B', 7, '2023-01-01 00:00:00'),
|
|
('550-A', 2, '2023-01-01 01:00:00'),
|
|
('550-W', 3, '2023-01-01 02:00:00'),
|
|
('550-W', 4, '2023-01-01 03:00:00');
|
|
|
|
|
|
-- count
|
|
SELECT
|
|
count(i)
|
|
FROM
|
|
integers;
|
|
|
|
EXPLAIN
|
|
SELECT
|
|
count(i)
|
|
FROM
|
|
integers;
|
|
|
|
EXPLAIN ANALYZE
|
|
SELECT
|
|
count(i)
|
|
FROM
|
|
integers;
|
|
|
|
SELECT
|
|
ts,
|
|
count(i)
|
|
FROM
|
|
integers
|
|
GROUP BY
|
|
ts;
|
|
|
|
EXPLAIN
|
|
SELECT
|
|
ts,
|
|
count(i)
|
|
FROM
|
|
integers
|
|
GROUP BY
|
|
ts;
|
|
|
|
EXPLAIN ANALYZE
|
|
SELECT
|
|
ts,
|
|
count(i)
|
|
FROM
|
|
integers
|
|
GROUP BY
|
|
ts;
|
|
|
|
SELECT
|
|
date_bin('1 hour' :: INTERVAL, ts),
|
|
count(i)
|
|
FROM
|
|
integers
|
|
GROUP BY
|
|
date_bin('1 hour' :: INTERVAL, ts);
|
|
|
|
EXPLAIN
|
|
SELECT
|
|
date_bin('1 hour' :: INTERVAL, ts),
|
|
count(i)
|
|
FROM
|
|
integers
|
|
GROUP BY
|
|
date_bin('1 hour' :: INTERVAL, ts);
|
|
|
|
EXPLAIN ANALYZE
|
|
SELECT
|
|
date_bin('1 hour' :: INTERVAL, ts),
|
|
count(i)
|
|
FROM
|
|
integers
|
|
GROUP BY
|
|
date_bin('1 hour' :: INTERVAL, ts);
|
|
|
|
DROP TABLE integers; |