Академический Документы
Профессиональный Документы
Культура Документы
Try SQL
Section 1: Understanding Databases
The Story
Where to begin?
We want to see a movie at Gatsby Theaters, but were only interested
in seeing a comedy.
Consulting a newspaper
Finding a list of movies
Metropolis Sci-fi
Nosferatu
Horror
The Kid
Comedy
The Gold Rush Adventure
153 minutes
94 minutes
68 minutes
95 minutes
Reviewing a website
Finding a list of showtimes
Movie listings from the web
Metropolis Sci-fi
Nosferatu
Horror
The Kid
Comedy
The Gold Rush Adventure
153 minutes
94 minutes
68 minutes
95 minutes
Requesting the
latest showtimes
from a website
movie info
concessions info
database name
showtime info
promotions info
The data is organized and stored into tables, which hold the data so it is
available to be retrieved.
this database
contains 4 tables
Gatsby Theaters
Movies
movie info
Concessions
concessions info
Showtimes
showtime info
Promotions
promotions info
movie info
Concessions
concessions info
Showtimes
showtime info
Promotions
promotions info
movie info
Concessions
concessions info
Showtimes
showtime info
Promotions
promotions info
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
Rows
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
Columns
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
Unique
identifier
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
Try SQL
Section 2: Introducing SQL
SQL Code
Result
SQL Code
Result
SQL Code
Result
SQL Code
Result
Request
Web Page
Server
Sends SQL
SQL Code
A Database
Result
Retrieve a list of all movies with id, title, genre, and duration of the movie.
SELECT Recipe
SELECT _______
FROM _________;
id
title
genre
duration
Metropolis
Sci-Fi
153
Table
Nosferatu
Horror
94
Movies
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies;
SELECT title
FROM movies;
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT *
FROM movies;
WHERE Recipe
SELECT _____
FROM _______
WHERE ______;
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 2;
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 2;
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 2;
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 2;
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 2;
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 2;
Since the column title is the only column
that is queried, thats the only data returned.
Nosferatu
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT *
FROM movies
WHERE title = 'The Kid';
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT *
FROM movies
WHERE title = 'The Kid';
Since data for all movies is searched, all records
are at first considered for the result.
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT *
FROM movies
WHERE title = 'The Kid';
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT *
FROM movies
WHERE title = 'The Kid';
Try SQL
Section 3: Guiding Data Criteria
Sorting data
The ORDER BY clause can be used to sort data in a specic way.
ORDER BY Recipe
SELECT _____
FROM _______
ORDER BY ______;
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
ORDER BY duration;
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
ORDER BY duration;
id
title
genre
duration
The Kid
Comedy
68
Nosferatu
Horror
94
Adventure
95
Metropolis
Sci-Fi
153
SELECT title
FROM movies
ORDER BY duration;
id
title
genre
duration
Metropolis
Sci-Fi
153
Adventure
95
Nosferatu
Horror
94
The Kid
Comedy
68
SELECT title
FROM movies
ORDER BY duration DESC;
SELECT _____
FROM _______
WHERE ______ > ______;
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT *
FROM movies
WHERE duration = 100;
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT *
FROM movies
WHERE duration > 100;
SELECT *
FROM movies
WHERE duration < 100;
SELECT *
FROM movies
WHERE duration >= 94;
SELECT *
FROM movies
WHERE duration <= 95;
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT *
FROM movies
WHERE genre <> 'Horror';
AND Recipe
SELECT _____
FROM _______
WHERE ______
AND ______;
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 1
AND genre = 'Comedy';
title
genre
duration
Metropolis
Comedy
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 1
AND genre = 'Comedy';
title
genre
duration
Metropolis
Comedy
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 1
AND genre = 'Comedy';
title
genre
duration
Metropolis
Comedy
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 1
AND genre = 'Comedy';
OR Recipe
SELECT _____
FROM _______
WHERE ______
OR ______;
id
title
genre
duration
Metropolis
Comedy
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 1
OR genre = 'Comedy';
title
genre
duration
Metropolis
Comedy
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
SELECT title
FROM movies
WHERE id = 1
OR genre = 'Comedy';
Try SQL
Section 1: Adding Data
Okay, now we can access the data. But how do we add data to the
current table?
We want to add a new movie called The Circus to the Movies table.
Its a Comedy with a duration of 71 minutes.
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The task is to add a new movie called The Circus to the table
movies. It is a Comedy with a duration of 71 minutes.
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
Same
The same goal could have been accomplished without having the
columns, only because data is being inserted into all the columns.
The Circus
The Fly
80
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
The Fly
80
Understanding auto-increment
SQL can automatically increment the primary key for a table for new rows.
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
The Fly
80
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
The Fly
80
Try SQL
Section 2: Changing Current Data
UPDATE ______
SET ______ = ______
(WHERE clause)
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
UPDATE movies
SET genre = 'Romance'
WHERE id = 5;
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
UPDATE movies
SET genre = 'Romance'
WHERE id = 5;
State the table movies to pinpoint where this UPDATE will be made.
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
UPDATE movies
SET genre = 'Romance'
WHERE id = 5;
Lets use the SET keyword to set the column genre to a value of Romance
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
71
UPDATE movies
SET genre = 'Romance'
WHERE id = 5;
WHERE the id is 5.
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Romance
71
UPDATE movies
SET genre = 'Romance'
WHERE id = 5;
The UPDATE statement successfully changed the genre from Comedy
to Romance for the movie The Circus.
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Comedy
70
UPDATE movies
SET genre = 'Comedy', duration = 70
WHERE id = 5;
Separate changes by adding a comma and add each entry to the end of the line.
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Romance
68
Adventure
95
The Circus
Romance
70
UPDATE movies
SET genre = 'Romance'
WHERE id = 3 OR id = 5;
To accomplish this, simply add an OR clause to the WHERE statement.
Try SQL
Section 3: Removing Data
DELETE Recipe
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Romance
71
How can a movie be removed from a table using SQL? We DELETE it, of course!
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Romance
71
Deleting data
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Romance
71
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
The Circus
Romance
71
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
What would have happened if the WHERE clause was not included?
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
id
title
genre
duration
Metropolis
Sci-Fi
153
Nosferatu
Horror
94
The Kid
Comedy
68
Adventure
95
Try SQL
Section 1: Creating and Removing Databases
and Tables
movie info
Concessions
concessions info
showtime info
Promotions
promotions info
Chaplin Theaters
Empty database
created no tables yet!
Chaplin Theaters
Be warned: Once this command is run, the database and ALL its data will
no longer be available!
);
CREATE TABLE
(
column_name1 datatype,
column_name2 datatype,
column_name3 datatype,
);
Movies
movie info
concessions info
showtime info
promotions info
How can the identity of the columns and their data types be created
in the database?
numbers
characters
characters
numbers
numbers
Last column
This column appears to hold only numbers.
numbers
Movies
id
title
genre
duration
Deleting tables
Chaplin Theaters
Movies
Deleting tables
Chaplin Theaters
Try SQL
Section 2: Manipulating Tables
id
title
genre
duration
Don Juan
Romance
110
Peter Pan
Adventure
105
Fantasy
106
Robin Hood
Adventure
143
id
title
genre
duration
Don Juan
Romance
110
Peter Pan
Adventure
105
Fantasy
106
Robin Hood
Adventure
143
ratings
id
title
genre
duration
ratings
Don Juan
Romance
110
Peter Pan
Adventure
105
Fantasy
106
Robin Hood
Adventure
143
The new column now has data that can be used in the database.
id
title
genre
duration
ratings
Don Juan
Romance
110
Peter Pan
Adventure
105
Fantasy
106
Robin Hood
Adventure
143
id
title
genre
duration
Don Juan
Romance
110
Peter Pan
Adventure
105
Fantasy
106
Robin Hood
Adventure
143