Skip to content

Instantly share code, notes, and snippets.

@bogoreh
Created March 8, 2021 12:05
Show Gist options
  • Select an option

  • Save bogoreh/9384374649e0145b197056cd5cbc391d to your computer and use it in GitHub Desktop.

Select an option

Save bogoreh/9384374649e0145b197056cd5cbc391d to your computer and use it in GitHub Desktop.
CREATE TABLE books (
id INTEGER PRIMARY KEY AUTOINCREMENT,
author TEXT,
title TEXT,
words INTEGER);
INSERT INTO books (author, title, words)
VALUES ("J.K. Rowling", "Harry Potter and the Philosopher's Stone", 79944);
INSERT INTO books (author, title, words)
VALUES ("J.K. Rowling", "Harry Potter and the Chamber of Secrets", 85141);
INSERT INTO books (author, title, words)
VALUES ("J.K. Rowling", "Harry Potter and the Prisoner of Azkaban", 107253);
INSERT INTO books (author, title, words)
VALUES ("J.K. Rowling", "Harry Potter and the Goblet of Fire", 190637);
INSERT INTO books (author, title, words)
VALUES ("J.K. Rowling", "Harry Potter and the Order of the Phoenix", 257045);
INSERT INTO books (author, title, words)
VALUES ("J.K. Rowling", "Harry Potter and the Half-Blood Prince", 168923);
INSERT INTO books (author, title, words)
VALUES ("J.K. Rowling", "Harry Potter and the Deathly Hallows", 197651);
INSERT INTO books (author, title, words)
VALUES ("Stephenie Meyer", "Twilight", 118501);
INSERT INTO books (author, title, words)
VALUES ("Stephenie Meyer", "New Moon", 132807);
INSERT INTO books (author, title, words)
VALUES ("Stephenie Meyer", "Eclipse", 147930);
INSERT INTO books (author, title, words)
VALUES ("Stephenie Meyer", "Breaking Dawn", 192196);
INSERT INTO books (author, title, words)
VALUES ("J.R.R. Tolkien", "The Hobbit", 95022);
INSERT INTO books (author, title, words)
VALUES ("J.R.R. Tolkien", "Fellowship of the Ring", 177227);
INSERT INTO books (author, title, words)
VALUES ("J.R.R. Tolkien", "Two Towers", 143436);
INSERT INTO books (author, title, words)
VALUES ("J.R.R. Tolkien", "Return of the King", 134462);
/* In this first step, select all the authors who have written more than 1 million words, using GROUP BY and HAVING.
Your results table should include the 'author' and their total word count as a 'total_words' column. */
SELECT author,
SUM(words)
AS total_words
FROM books
GROUP BY author
HAVING total_words >= 1000000;
/*Step 2
Now select all the authors that write more than an average of 150,000 words per book.
Your results table should include the 'author' and average words as an 'avg_words' column. */
SELECT author,
AVG(words)
AS avg_words
FROM books
GROUP BY author
HAVING avg_words >= 150000;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment