Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
67% found this document useful (3 votes)
5K views

SQL Presentation 1

This document provides an overview of SQL (Structured Query Language) including its data definition language (DDL) and data manipulation language (DML). It describes common SQL statements like CREATE TABLE, ALTER TABLE, DROP TABLE, INSERT, UPDATE, DELETE. It also covers SQL clauses, operators, and aggregate functions. Examples are provided to illustrate how to use SQL statements to define tables, insert/update/delete rows, perform joins and use aggregate functions to summarize data.

Uploaded by

T Pulla Reddy
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
67% found this document useful (3 votes)
5K views

SQL Presentation 1

This document provides an overview of SQL (Structured Query Language) including its data definition language (DDL) and data manipulation language (DML). It describes common SQL statements like CREATE TABLE, ALTER TABLE, DROP TABLE, INSERT, UPDATE, DELETE. It also covers SQL clauses, operators, and aggregate functions. Examples are provided to illustrate how to use SQL statements to define tables, insert/update/delete rows, perform joins and use aggregate functions to summarize data.

Uploaded by

T Pulla Reddy
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 30

Chapter 7: SQL, the Structured Query Language

Soid Quintero & Ervi Bongso CS157B

Overview
Introduction DDL Commands DML Commands SQL Statements, Operators, Clauses Aggregate Functions

Structured Query Language (SQL)


The ANSI standard language for the definition and manipulation of relational database. Includes data definition language (DDL), statements that specify and modify database schemas. Includes a data manipulation language (DML), statements that manipulate database content.

Some Facts on SQL


SQL data is case-sensitive, SQL commands are not.

First Version was developed at IBM by Donald D. Chamberlin and Raymond F. Boyce. [SQL]
Developed using Dr. E.F. Codd's paper, A Relational Model of Data for Large Shared Data Banks. SQL query includes references to tuples variables and the attributes of those variables

SQL: DDL Commands


CREATE TABLE: used to create a table.

ALTER TABLE: modifies a table after it was created.


DROP TABLE: removes a table from a database.

SQL: CREATE TABLE Statement


Things to consider before you create your table are: The type of data the table name what column(s) will make up the primary key the names of the columns CREATE TABLE statement syntax: CREATE TABLE <table name> ( field1 datatype ( NOT NULL ), field2 datatype ( NOT NULL ) );

SQL: Attributes Types

Table 7.6 pg.164

SQL: ALTER TABLE Statement


To add or drop columns on existing tables.

ALTER TABLE statement syntax: ALTER TABLE <table name> ADD attr datatype; or DROP COLUMN attr;

SQL: DROP TABLE Statement


Has two options: CASCADE: Specifies that any foreign key constraint violations that are caused by dropping the table will cause the corresponding rows of the related table to be deleted. RESTRICT: blocks the deletion of the table of any foreign key constraint violations would be created. DROP TABLE statement syntax: DROP TABLE <table name> [ RESTRICT|CASCADE ];

Example: CREATE TABLE FoodCart ( date varchar(10), food varchar(20), profit float );
FoodCart

FoodCart

date food profit

ALTER TABLE FoodCart ( ADD sold int ); ALTER TABLE FoodCart( DROP COLUMN profit ); DROP TABLE FoodCart;

date food profit sold


FoodCart

date food sold

SQL: DML Commands


INSERT: adds new rows to a table.

UPDATE: modifies one or more attributes.


DELETE: deletes one or more rows from a table.

SQL: INSERT Statement


To insert a row into a table, it is necessary to have a value for each attribute, and order matters. INSERT statement syntax:
INSERT into <table name> VALUES ('value1', 'value2', NULL); Example: INSERT into FoodCart
FoodCart

VALUES (02/26/08', pizza', 70 );

date food sold 02/25/08 pizza 350 02/26/08 hotdog 500

date 02/25/08 02/26/08 02/26/08

food pizza hotdog pizza

sold 350 500 70

SQL: UPDATE Statement


To update the content of the table: UPDATE statement syntax: UPDATE <table name> SET <attr> = <value> WHERE <selection condition>; Example: UPDATE FoodCart SET sold = 349 WHERE date = 02/25/08 AND food = pizza;
FoodCart

date 02/25/08 02/26/08 02/26/08

food pizza hotdog pizza

sold 350 500 70

date 02/25/08 02/26/08 02/26/08

food pizza hotdog pizza

sold 349 500 70

SQL: DELETE Statement


To delete rows from the table: DELETE statement syntax: DELETE FROM <table name> WHERE <condition>; Example: DELETE FROM FoodCart WHERE food = hotdog;
FoodCart

date 02/25/08 02/26/08 02/26/08

food pizza hotdog pizza

sold 349 500 70

date food 02/25/08 pizza 02/26/08 pizza

sold 349 70

Note: If the WHERE clause is omitted all rows of data are deleted from the table.

SQL Statements, Operations, Clauses


SQL Statements: Select SQL Operations: Join Left Join Right Join Like SQL Clauses: Order By Group By Having

SQL: SELECT Statement


A basic SELECT statement includes 3 clauses
SELECT <attribute name> FROM <tables> WHERE <condition>
SELECT
Specifies the attributes that are part of the resulting relation

FROM
Specifies the tables that serve as the input to the statement

WHERE
Specifies the selection condition, including the join condition.

Note: that you don't need to use WHERE

SQL: SELECT Statement (cont.)


Using a * in a select statement indicates that every attribute of the input table is to be selected. Example: SELECT * FROM WHERE ; To get unique rows, type the keyword DISTINCT after SELECT. Example: SELECT DISTINCT * FROM WHERE ;

Example: Person
Name Harry Sally George Age 34 28 29 Weight 80 64 70

1) SELECT * FROM person WHERE age > 30;


Name Harry Helena Peter Age 34 54 34 Weight 80 54 80

Helena
Peter

54
34

54
80

2) SELECT weight FROM person WHERE age > 30;


Weight 80 54

3) SELECT distinct weight FROM person WHERE age > 30;


Weight
80 54

80

SQL: Join operation


A join can be specified in the FROM clause which list the two input relations and the WHERE clause which lists the join condition. Example:
Emp Dept

ID 1000 1001 1002

State CA MA TN

ID 1001 1002 1003

Division IT Sales Biotech

SQL: Join operation (cont.)


inner join = join SELECT * FROM emp join dept (or FROM emp, dept) on emp.id = dept.id;

Emp.ID Emp.State Dept.ID Dept.Division 1001 MA 1001 IT 1002 TN 1002 Sales

SQL: Join operation (cont.)


left outer join = left join SELECT * FROM emp left join dept on emp.id = dept.id;

Emp.ID 1000 1001 1002

Emp.State CA MA TN

Dept.ID null 1001 1002

Dept.Division null IT Sales

SQL: Join operation (cont.)


right outer join = right join SELECT * FROM emp right join dept on emp.id = dept.id;

Emp.ID 1001 1002 null

Emp.State MA TN null

Dept.ID 1001 1002 1003

Dept.Division IT Sales Biotech

SQL: Like operation


Pattern matching selection % (arbitrary string) SELECT * FROM emp WHERE ID like %01; finds ID that ends with 01, e.g. 1001, 2001, etc _ (a single character) SELECT * FROM emp WHERE ID like _01_; finds ID that has the second and third character as 01, e.g. 1010, 1011, 1012, 1013, etc

SQL: The ORDER BY Clause


Ordered result selection desc (descending order) SELECT * FROM emp order by state desc puts state in descending order, e.g. TN, MA, CA asc (ascending order) SELECT * FROM emp order by id asc puts ID in ascending order, e.g. 1001, 1002, 1003

SQL: The GROUP BY Clause


The function to divide the tuples into groups and returns an aggregate for each group. Usually, it is an aggregate functions companion SELECT food, sum(sold) as totalSold FROM FoodCart group by food;
FoodCart

date 02/25/08 02/26/08 02/26/08

food pizza hotdog pizza

sold 349 500 70

food totalSold hotdog 500 pizza 419

SQL: The HAVING Clause


The substitute of WHERE for aggregate functions Usually, it is an aggregate functions companion

SELECT food, sum(sold) as totalSold FROM FoodCart group by food having sum(sold) > 450;
FoodCart

date 02/25/08 02/26/08 02/26/08

food pizza hotdog pizza

sold 349 500 70

food totalSold hotdog 500

SQL: Aggregate Functions


Are used to provide summarization information for SQL statements, which return a single value. COUNT(attr) SUM(attr) MAX(attr) MIN(attr) AVG(attr) Note: when using aggregate functions, NULL values are not considered, except in COUNT(*) .

SQL: Aggregate Functions (cont.)


FoodCart

date 02/25/08 02/26/08 02/26/08

food pizza hotdog pizza

sold 349 500 70

COUNT(attr) -> return # of rows that are not null Ex: COUNT(distinct food) from FoodCart; -> 2

SUM(attr) -> return the sum of values in the attr Ex: SUM(sold) from FoodCart; -> 919
MAX(attr) -> return the highest value from the attr Ex: MAX(sold) from FoodCart; -> 500

SQL: Aggregate Functions (cont.)


FoodCart

date 02/25/08 02/26/08 02/26/08

food pizza hotdog pizza

sold 349 500 70

MIN(attr) -> return the lowest value from the attr Ex: MIN(sold) from FoodCart; -> 70

AVG(attr) -> return the average value from the attr Ex: AVG(sold) from FoodCart; -> 306.33 Note: value is rounded to the precision of the datatype

References
Riccardi, Greg. Principles of Database Systems with Internet and Java Applications. Addison Wesley, 2001.

Ronald R. Plew, Ryan K. Stephens. Teach Yourself SQL in 24 Hours 3rd Edition. Sams Publishing, 2003.

SQL

http://en.wikipedia.org/wiki/SQL

W3C http://www.w3schools.com/sql/sql_tryit.asp Wikipedia - SQL http://en.wikipedia.org/wiki/SQL Wikipedia - join http://en.wikipedia.org/wiki/Join_(SQL)

You might also like