Last active
April 7, 2019 22:18
-
-
Save sqldeployhelmet/93472343185a5e6b3a035ec45b509140 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* What movies have been nominated for 1, 2 or 3 Oscars? */ | |
SELECT name, releaseDate, oscarNoms | |
FROM films | |
/* if any one of the following conditions is true for a row it will be returned */ | |
WHERE oscarNoms = 1 | |
OR oscarNoms = 2 | |
OR oscarNoms = 3; | |
/* These can more easily be written with the IN clause */ | |
SELECT name releasedDate | |
FROM films | |
WHERE oscarNoms IN (1, 2, 3); -- this is the same as the OR statement above | |
/* Oscar nominated moveis released on or after Jan 1, 2017 */ | |
SELECT name, releaseDate, oscarNoms | |
FROM films | |
/* both of the conditions on either side of the AND need to be true for the row to be valid */ | |
WHERE releaseDate >= '2017-01-01' -- SQL will convert this string into a date YYYY-MM-DD is the easiest way to write this | |
AND OscarNoms >= 1; | |
/* we can even compare column values in rows to each other */ | |
SELECT name, releaseDate | |
FROM films | |
WHERE releaseDate < '1950-01-01' | |
AND boxOffice > budget; | |
/* Bonus query! | |
You can combine and seperate WHERE clauses with parenthesis | |
these can be used to have more complex statements for | |
returning rows: essentially you working to return a true/false | |
statment for returning any given row (also called tuples) | |
*/ | |
SELECT name, releaseDate | |
FROM films | |
WHERE ( /* this outer statement is true if either of the two | |
parentheticals below are true */ | |
(oscarNoms > 2) OR | |
(releaseDate > '1980-12-31' AND budget >= 100000 ) | |
) /* if the previous was true AND the box office was less | |
than $500,000 then the row can be returned */ | |
AND boxOffice < 500000; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment