Coding Bootcamp: Introduction to relational databases

Course tasks

Introduction

Data layer

Files vs. Relational Databases (1/2)

Issues when using file systems

Files vs. Relational Databases (2/2)

File systems issues when dealing with data storage

What is an RDBMS

What is a table

What is a field

What is a record or row

What is a column

What is a primary key (1/2)

What is a primary key (2/2)

SQL General Data Types (1/3)

SQL General Data Types (2/3)

Data type Description
CHARACTER(n) Character string. Fixed-length n
VARCHAR(n) Character string. Variable length. Maximum length n
BOOLEAN Stores TRUE or FALSE values
INTEGER(p) Integer numerical (no decimal). Precision p
SMALLINT Integer numerical (no decimal). Precision 5
INTEGER Integer numerical (no decimal). Precision 10

SQL General Data Types (3/3)

| Data type | Description |
| --- | --- |
| BIGINT | Integer numerical (no decimal). Precision 19 |
| DECIMAL(p,s) | Exact numerical, precision p, scale s. Example: decimal(5,2) is a number that has 3 digits before the decimal and 2 digits after the decimal |
| NUMERIC(p,s) Exact numerical, precision p, scale s. (Same as DECIMAL) |
| FLOAT(p) |Approximate numerical, mantissa precision p. A floating number in base 10 exponential notation. The size argument for this type consists of a single number specifying the minimum precision |
| REAL | Approximate numerical, mantissa precision 7 |
| DOUBLE PRECISION | Approximate numerical, mantissa precision 16 |
| DATE | Stores year, month, and day values |
| TIME | Stores hour, minute, and second values |
| TIMESTAMP | Stores year, month, day, hour, minute, and second values |

Examples - Character String: CHARACTER(8)

Examples - Character String: VARCHAR(10)

Examples - BOOLEAN

Examples - INTEGER(7)

Examples - DECIMAL(10,3)

Examples - DATE

Examples - TIME

Examples - TIMESTAMP

Understanding the role of SQL

What SQL can do

SQL Statements

Most of the actions needed to be performed on a database are done with SQL statements

SELECT Statement

SQL SELECT Syntax

SELECT column_name,column_name
FROM table_name;

or

SELECT * FROM table_name;

Example

SELECT * FROM Customers;

SELECT DISTINCT Statement

SQL SELECT Syntax

SELECT DISTINCT column_name,column_name
FROM table_name;

Example

SELECT DISTINCT City FROM Customers;

WHERE Clause

SQL SELECT Syntax

SELECT column_name,column_name
FROM table_name
WHERE column_name operator value;

Example

SELECT * FROM Customers WHERE Country='Mexico';

AND & OR Operators

SQL AND Syntax

SELECT column_name,column_name
FROM table_name
WHERE condition1=true AND condition2=true;

Examples

Example SELECT * FROM Customers
WHERE City='Berlin'
OR City='München';
SELECT * FROM Customers
WHERE Country='Germany'
AND (City='Berlin' OR City='München');

ORDER BY Keyword

SQL ORDER BY Syntax

SELECT column_name, column_name
FROM table_name
ORDER BY column_name ASC|DESC, column_name ASC|DESC;

Examples

SELECT * 
FROM Customers 
ORDER BY Country;
SELECT * 
FROM Customers 
ORDER BY Country ASC, CustomerName DESC;

The IN Operator

INSERT INTO Statement

SQL INSERT INTO Syntax

UPDATE Statement

SQL UPDATE INTO Syntax

UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;

Example

UPDATE Customers
SET ContactName='Alfred Schmidt', City='Hamburg'
WHERE CustomerName='Alfreds Futterkiste';

DELETE Statement

SQL DELETE INTO Syntax

DELETE FROM table_name
WHERE some_column=some_value;

Example

DELETE FROM Customers
WHERE CustomerName='Alfreds Futterkiste' AND ContactName='Maria Anders';

SQL Functions

Useful aggregate functions:

AVG() Function

SQL AVG() Syntax

SELECT AVG(column_name) 
FROM table_name;

Example

SELECT AVG(Price) AS PriceAverage 
FROM Products;

COUNT() Function (1/2)

SQL COUNT(column_name) Syntax

SELECT COUNT(column_name) 
FROM table_name;

Example

SELECT COUNT(CustomerID) AS OrdersFromCustomerID7 
FROM Orders 
WHERE CustomerID=7;

COUNT() Function (1/2)

The COUNT() function returns the number of records in a table
SQL COUNT(
) Syntax

SELECT COUNT(*) 
FROM table_name;

Example

SELECT COUNT(*) AS NumberOfOrders 
FROM Orders;

MAX() Function

SQL MAX() Syntax

SELECT MAX(column_name) 
FROM table_name;

Example

SELECT MAX(Price) AS HighestPrice 
FROM Products;

MIN() Function

SQL MIN() Syntax

SELECT MIN(column_name) 
FROM table_name;

Example

SELECT MIN(Price) AS SmallestOrderPrice  
FROM Products;

SUM() Function

SQL SUM() Syntax

SELECT SUM(column_name) 
FROM table_name;

Example

SELECT SUM(Quantity) AS TotalItemsOrdered 
FROM OrderDetails;

GROUP BY Statement

SQL GROUP BY Syntax

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name;

Example

SELECT ShipperName,COUNT(OrderID) AS NumberOfOrders FROM Orders
GROUP BY ShipperName;

HAVING Clause

SQL HAVING Syntax

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value;

Example

SELECT Employees.LastName, COUNT (OrderID) AS NumberOfOrders FROM Orders
GROUP BY LastName
HAVING COUNT(Orders.OrderID) > 10;

Install MySQL RDBMS

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Install MySQL Workbench / MySQL Server

Create a new Database

Create a new Database

Create a new Database

Create a new Database

Create a new Database

Create a new Database

Exercise 1

Exercise 2

Exercise 3

Exercise 4

Exercise 5

Exercise 6

Exercise 7

Exercise 8

Exercise 9

Exercise 10

Exercise 11


Creative Commons Licence
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.