Aggregates

COUNT SUM AVG.

COUNT, SUM, AVG fold rows.

Goal

Sum units and average shillings.

DROP TABLE IF EXISTS sales;
CREATE TABLE sales (
  city TEXT,
  units INTEGER,
  shillings INTEGER
);
INSERT INTO sales VALUES
  ('Nairobi', 12, 480),
  ('Mombasa', 8, 320),
  ('Kisumu', 5, 200);

SELECT COUNT(*) AS kiosks, SUM(units) AS units FROM sales;
DROP TABLE IF EXISTS sales;
CREATE TABLE sales (
  city TEXT,
  units INTEGER,
  shillings INTEGER
);
INSERT INTO sales VALUES
  ('Nairobi', 12, 480),
  ('Mombasa', 8, 320),
  ('Kisumu', 5, 200);

SELECT AVG(shillings) AS avg_kes FROM sales;
DROP TABLE IF EXISTS sales;
CREATE TABLE sales (
  city TEXT,
  units INTEGER,
  shillings INTEGER
);
INSERT INTO sales VALUES
  ('Nairobi', 12, 480),
  ('Mombasa', 8, 320),
  ('Kisumu', 5, 200);

SELECT MIN(units) AS quiet, MAX(units) AS busy FROM sales;
DROP TABLE IF EXISTS sales;
CREATE TABLE sales (
  city TEXT,
  units INTEGER,
  shillings INTEGER
);
INSERT INTO sales VALUES
  ('Nairobi', 12, 480),
  ('Mombasa', 8, 320),
  ('Kisumu', 5, 200);

SELECT SUM(shillings) AS till FROM sales;