Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
69 views

SQL Quick Reference

The document provides examples of SQL statements and their syntax using sample tables LECTURER and STUDENT. It includes examples of SELECT, INSERT, UPDATE, DELETE, JOIN, GROUP BY, HAVING and aggregate functions like COUNT, AVG, to retrieve and manipulate data from the tables. Aggregate functions are used with GROUP BY to group and perform calculations on column values. HAVING can filter groups after aggregation unlike WHERE which filters rows before aggregation.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
69 views

SQL Quick Reference

The document provides examples of SQL statements and their syntax using sample tables LECTURER and STUDENT. It includes examples of SELECT, INSERT, UPDATE, DELETE, JOIN, GROUP BY, HAVING and aggregate functions like COUNT, AVG, to retrieve and manipulate data from the tables. Aggregate functions are used with GROUP BY to group and perform calculations on column values. HAVING can filter groups after aggregation unlike WHERE which filters rows before aggregation.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

SQL Quick Reference

The examples below use the following tables:


LECTURER (id, LName) and STUDENT (id, StName, StAdvisor) where StAdvisor is
the foreign key for a one-to-many SUPERVISING relationship between the
lecturers and the students.
SQL
Syntax
Example
Stateme
nt
AND / OR SELECT column_name(s)
SELECT Id, StName
FROM table_name
FROM Student
WHERE condition
WHERE ID>1 AND StAdvisor > 2;
AND|OR condition
ALTER
ALTER TABLE table_name
ALTER TABLE Student
TABLE
ADD column_name datatype
ADD Age Number;
or
ALTER TABLE table_name
ALTER TABLE Student
DROP COLUMN column_name
DROP COLUMN Age;
AS (alias) SELECT column_name AS column_alias SELECT StName AS StudentName
FROM table_name
FROM Student;
or
SELECT column_name
FROM table_name AS table_alias
SELECT StName
FROM Student AS KSUStudent;
BETWEEN SELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2
CREATE
CREATE DATABASE database_name
DATABASE
CREATE
CREATE TABLE table_name
TABLE
(
column_name1 data_type,
column_name2 data_type,
...
)
CREATE
CREATE INDEX index_name
INDEX
ON table_name (column_name)
or
CREATE UNIQUE INDEX index_name
ON table_name (column_name)
CREATE
CREATE VIEW view_name AS
VIEW
SELECT column_name(s)
FROM table_name
WHERE condition
DELETE
DELETE FROM table_name
WHERE some_column=some_value
or
DELETE FROM table_name
(Note: Deletes the entire table!!)
DELETE * FROM table_name
(Note: Deletes the entire table!!)

SELECT Id, LName


FROM Lecturer
WHERE ID
BETWEEN 2 AND 4;

CREATE TABLE Room(


RNO Number,
RDescription Text);

DELETE FROM Room


WHERE RNO =2;
DELETE FROM Room
WHERE RNO
BETWEEN 2 AND 4;

DROP
DROP DATABASE database_name
DATABASE
DROP
DROP INDEX table_name.index_name
INDEX
(SQL Server)
DROP INDEX index_name ON
table_name (MS Access)
DROP INDEX index_name (DB2/Oracle)
ALTER TABLE table_name
DROP INDEX index_name (MySQL)
DROP
DROP TABLE table_name
DROP TABLE Room;
TABLE
GROUP BY SELECT column_name,
SELECT StAdvisor, COUNT(ID)
aggregate_function(column_name)
FROM Student
FROM table_name
GROUP BY StAdvisor;
WHERE column_name operator value SELECT StAdvisor, Avg(Age)
GROUP BY column_name
FROM Student
GROUP BY StAdvisor;
SELECT StAdvisor, Avg(Age)
FROM Student
WHERE StAdvisor > 2
GROUP BY StAdvisor;
HAVING
SELECT column_name,
SELECT StAdvisor, Avg(Age)
aggregate_function(column_name)
FROM Student
FROM table_name
WHERE StAdvisor > 1
WHERE column_name operator value GROUP BY StAdvisor
GROUP BY column_name
HAVING Avg(Age)>10;
HAVING
aggregate_function(column_name)
operator value
IN
SELECT column_name(s)
FROM table_name
WHERE column_name
IN (value1,value2,..)
INSERT
INSERT INTO table_name
INSERT INTO Student
INTO
VALUES (value1, value2, value3,....)
VALUES (10, Mohamed, 3, 15);
or
or
INSERT INTO table_name
INSERT INTO Student
(column1, column2, column3,...)
(ID,Age)
VALUES (value1, value2, value3,....)
VALUES (11, 15);
LIKE
SELECT column_name(s)
SELECT Id, LName
FROM table_name
FROM Lecturer
WHERE column_name LIKE pattern
WHERE LName LIKE L*;
SELECT Id, LName
FROM Lecturer
WHERE LName LIKE L?;
ORDER BY SELECT column_name(s)
SELECT Id, LName
FROM table_name
FROM Lecturer
ORDER BY column_name [ASC|DESC] ORDER BY LName DESC ;
SELECT
SELECT column_name(s)
SELECT LName
FROM table_name
FROM Lecturer
SELECT * SELECT *
SELECT *
FROM table_name
FROM Lecturer
SELECT
SELECT DISTINCT column_name(s)
SELECT DISTINCT LName
DISTINCT FROM table_name
FROM Lecturer
UPDATE
UPDATE table_name
UPDATE Student
SET column1=value,
SET StName=Ali, StAdvisor=2

WHERE

INNER
JOIN

column2=value,...
WHERE some_column=some_value
SELECT column_name(s)
FROM table_name
WHERE column_name operator value
SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2
ON
table_name1.column_name=table_na
me2.column_name

LEFT JOIN SELECT column_name(s)


FROM table_name1
LEFT JOIN table_name2
ON
table_name1.column_name=table_na
me2.column_name
RIGHT
SELECT column_name(s)
JOIN
FROM table_name1
RIGHT JOIN table_name2
ON
table_name1.column_name=table_na
me2.column_name
FULL JOIN SELECT column_name(s)
FROM table_name1
FULL JOIN table_name2
ON
table_name1.column_name=table_na
me2.column_name
SELECT
SELECT *
INTO
INTO new_table_name [IN
externaldatabase]
FROM old_table_name
or
SELECT column_name(s)
INTO new_table_name [IN
externaldatabase]
FROM old_table_name
SELECT
SELECT TOP number|percent
TOP
column_name(s)
FROM table_name
TRUNCATE TRUNCATE TABLE table_name
TABLE
UNION
SELECT column_name(s) FROM
table_name1
UNION
SELECT column_name(s) FROM
table_name2
UNION
SELECT column_name(s) FROM
ALL
table_name1
UNION ALL
SELECT column_name(s) FROM
table_name2

WHERE ID=1;
Most of the examples above!

SELECT StName, LName


FROM Student, Lecturer
WHERE Lecturer.ID = StAdvisor;
SELECT StName, LName
FROM Lecturer INNER JOIN Student ON
Lecturer.ID = Student.StAdvisor;

SQL aggregate functions are: MIN, MAX,SUM, AVG, COUNT

Group By Example 1: What is the average mark for each


course?
SELECT CourseID, Avg(Marks)
FROM Marks
GROUP BY CourseID
Course ID
CC151
CC152
CC153
EC111
EC112

Marks
73.9
55.5
55.7
71.0
43.5

If there's a GROUP BY clause, only grouped attributes and


aggregates may appear in the SELECT clause.
Group By Example 2: How many students are taking
each course?
SELECT CourseID, Count (ID),
FROM Marks
GROUP BY CourseID
Course ID
CC151
CC152
CC153
EC111
EC112

Count (ID)
3
2
1
1
1

HAVING Clause: How many students are taking each


course (only report courses with more than one
student)?
SELECT Course ID, Count (ID),
FROM Marks
GROUP BY Course ID
HAVING Count(ID) > 1
Course ID
CC151

Count (ID)
3

CC152

Comments: WHERE clauses perform filtering before the


grouping. HAVING clauses perform filtering after the grouping.

You might also like