Types

INTEGER, REAL, TEXT.

SQLite affinity: INTEGER, REAL, TEXT.

Goal

Store a REAL price next to INTEGER units.

DROP TABLE IF EXISTS sales;
CREATE TABLE sales (
  city TEXT,
  units INTEGER,
  price REAL
);
INSERT INTO sales VALUES ('Nairobi', 12, 40.0), ('Mombasa', 8, 40.5);
SELECT city, units, price, typeof(units), typeof(price) FROM sales;
DROP TABLE IF EXISTS sales;
CREATE TABLE sales (city TEXT, units INTEGER);
INSERT INTO sales VALUES ('Kisumu', '5');
SELECT city, units, typeof(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 city, CAST(shillings AS REAL) / units AS price FROM sales;
DROP TABLE IF EXISTS flags;
CREATE TABLE flags (city TEXT, open INTEGER);
INSERT INTO flags VALUES ('Nairobi', 1), ('Nakuru', 0);
SELECT city, open FROM flags WHERE open = 1;