BEGIN TRANSACTION; CREATE TABLE `animal` ( `id` INTEGER UNIQUE, `type` TEXT, `name` TEXT, PRIMARY KEY(id) ); INSERT INTO `animal` VALUES (1,'cat','Felix'), (2,'cat','Sylvester'), (3,'cat','Garfield'), (4,'lion','Simba'), (5,'lion','Elsa'), (6,'tiger','Sher Khan'), (7,'tiger','Woods'), (8,'dog','Rover'); CREATE INDEX `by-type` ON `animal` (`type` ASC); COMMIT; CREATE VIEW Summary AS Select type, count(*) FROM animal GROUP by type; CREATE VIEW cats_only AS SELECT id,name FROM animal WHERE type='cat';