SQL (Structured Query Language)
Who am I? Muhammad Sheraz Anjum
What I want? To demonstrate how SQL works…
But Why? To help you fall in love with SQL
1
Dated: Feb 19, 2018
2
AGENDA
Introduction
Sample Schema
Data Retrieval
Distinct/Order by
WHERE (AND/OR/NOT)
Like/Wildcards
In/Between
Subqueries
Joins
Table Creation
Data Insertion/Deletion/Updating
Introduction
What is a Database(DB)?
What is a Database Management System(DBMS)?
What is a Database Model?
Database System = DBMS + DB + Database Model
What is a Relational Database Management system(RDBMS)?
3
An Example of a Relation/Table
4
Introduction (cont.)
SQL is a standard language for storing, manipulating and
retrieving data held in relational databases.
SQL consist of three main types of statements:
Data Definition Language (DDL)
Data Manipulation Language (DML)
Data control Language (DCL)
Example:
SELECT *
FROM Table_Name;
5
Sample Schema
6
Customers Orders
Products OrderDetails
Source: www.w3schools.com/sql/trysql.asp?filename=trysql_select_all
Sample Data(Customers)
7
SELECT *
FROM Customers;
Sample Data(Products)
8
SELECT *
FROM Products;
Sample Data(Orders)
9
SELECT *
FROM Orders;
Sample Data(OrderDetails)
10
SELECT *
FROM OrderDetails;
Data Retrieval
“Data tells us more than what we think it does.”
11
Data Retrieval
SELECT Country
FROM Customers;
12
SELECT DISTINCT Country
FROM Customers;
Data Retrieval (Cont.)
SELECT *
FROM Customers
ORDER BY Country;
13
Data Retrieval (Cont.)
SELECT CustomerID, CustomerName, Country
FROM Customers;
14
Data Retrieval (Cont.)
15
SELECT *
FROM Customers
WHERE Country='Mexico';
Data Retrieval (Cont.)
16
SELECT *
FROM Customers
WHERE Country='Germany' AND City='Berlin';
Data Retrieval (Cont.)
17
SELECT *
FROM Customers
WHERE City='Berlin' OR City='München';
Data Retrieval (Cont.)
18
SELECT *
FROM Customers
WHERE NOT Country='Germany';
Data Retrieval (Cont.)
19
SELECT *
FROM Customers
WHERE CustomerName LIKE 'a%';
Data Retrieval (Cont.)
20
SELECT *
FROM Customers
WHERE CustomerName LIKE '_r%';
Data Retrieval (Cont.)
21
SELECT *
FROM Customers
WHERE Country IN ('Germany', 'France', 'UK');
Data Retrieval (Cont.)
22
SELECT *
FROM Customers
WHERE Country NOT IN ('Germany', 'France', 'UK');
Data Retrieval (Cont.)
23
SELECT *
FROM Products
WHERE Price BETWEEN 10 AND 20;
Data Retrieval (Cont.)
24
SELECT *
FROM Products
WHERE (Price BETWEEN 10 AND 20)
AND NOT CategoryID IN (1,2,3);
Data Retrieval (Cont.)
25
SELECT *
FROM Customers
WHERE Country IN (SELECT Country
FROM Suppliers);
Data Retrieval (Cont.)
26
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers
ON Orders.CustomerID=Customers.CustomerID;
Data Retrieval (Cont.)
27
SELECT Orders.OrderID, Customers.CustomerName, Shippers.ShipperName
FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID;
Table Creation
28
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,
....
);
CREATE TABLE Persons (
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
Data Insertion
29
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
INSERT INTO Customers (CustomerName, ContactName,
Address, City, PostalCode, Country)
VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21',
'Stavanger', '4006', 'Norway');
Data Deletion
30
DELETE FROM table_name
WHERE condition;
DELETE FROM Customers
WHERE CustomerName='Alfreds Futterkiste';
DELETE FROM table_name;
Data Updating
31
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
UPDATE Customers
SET ContactName = 'Alfred Schmidt', City= 'Frankfurt'
WHERE CustomerID = 1;
UPDATE Customers
SET ContactName='Juan'
WHERE Country='Mexico';
Thank You
32