I have a table with this schema
CREATE TABLE 'trades' (
symbol SYMBOL capacity 256 CACHE,
side SYMBOL capacity 256 CACHE,
price DOUBLE,
amount DOUBLE,
timestamp TIMESTAMP
) timestamp (timestamp) PARTITION BY DAY WAL DEDUP UPSERT KEYS(symbol, timestamp);
And I have some data like this (the real data is at sub-second resolution, but for the example this should suffice)
INSERT INTO trades (symbol, side, price, amount, timestamp) VALUES
('BTC-USD', 'buy', 25757.235813, 0.020919, '2023-09-05T16:00:00.000000Z'),
('BTC-USD', 'sell', 25776.646252, 0.069064, '2023-09-05T16:15:00.000000Z'),
('BTC-USD', 'sell', 25791.132914, 0.048749, '2023-09-05T16:30:00.000000Z'),
('BTC-USD', 'buy', 25760.595216, 0.024248, '2023-09-05T16:45:00.000000Z');
I know I can get the total amount for the sells and the buys per day by doing this:
SELECT
timestamp, symbol, side, sum(amount) as sell
FROM trades
SAMPLE by 1d;
But this gives me two rows, one for the ‘sell’ side and one for the ‘buy’ side. Any ideas to show this in a single row?