citus/test_aggregate_pg18.sql

26 lines
912 B
SQL

-- Test aggregate with GROUP BY to isolate the problem
\c citus
-- Tables should already exist
CREATE TABLE IF NOT EXISTS users_table (user_id int, value_1 int, value_2 int);
CREATE TABLE IF NOT EXISTS events_table (user_id int, event_type int, value_2 int);
-- Populate with minimal data
INSERT INTO users_table (user_id, value_1, value_2) VALUES (1, 10, 100), (2, 20, 200) ON CONFLICT DO NOTHING;
INSERT INTO events_table (user_id, event_type, value_2) VALUES (1, 1, 1), (2, 2, 2) ON CONFLICT DO NOTHING;
-- Test simple aggregate without GROUP BY (should work)
SELECT avg(event_type) FROM events_table;
-- Test simple aggregate with GROUP BY (might fail)
SELECT avg(event_type) FROM events_table GROUP BY user_id;
-- Test nested aggregate with GROUP BY (likely to fail)
SELECT avg(event_type)
FROM (
SELECT event_type, user_id
FROM events_table
WHERE value_2 < 3
) sub
GROUP BY sub.user_id;