Lectur 11sql Language
Lectur 11sql Language
2
© Pearson Education Limited 1995, 2005
Objectives of SQL
Ideally, database language should allow user to:
– create the database and relation structures;
– perform insertion, modification, deletion of
data from relations;
– perform simple and complex queries.
Must perform these tasks with minimal user
effort and command structure/syntax must be
easy to learn.
It must be portable.
3
© Pearson Education Limited 1995, 2005
Objectives of SQL
SQL is a transform-oriented language with 2 major
components:
4
© Pearson Education Limited 1995, 2005
Objectives of SQL
SQL is relatively easy to learn:
5
© Pearson Education Limited 1995, 2005
Objectives of SQL
Consists of standard English words:
6
© Pearson Education Limited 1995, 2005
Objectives of SQL
Can be used by range of users including DBAs,
management, application developers, and other
types of end users.
7
© Pearson Education Limited 1995, 2005
History of SQL
In 1974, D. Chamberlin (IBM San Jose
Laboratory) defined language called ‘Structured
English Query Language’ (SEQUEL).
A revised version, SEQUEL/2, was defined in
1976 but name was subsequently changed to SQL
for legal reasons.
8
© Pearson Education Limited 1995, 2005
History of SQL
Still pronounced ‘see-quel’, though official
pronunciation is ‘S-Q-L’.
IBM subsequently produced a prototype DBMS
called System R, based on SEQUEL/2.
Roots of SQL, however, are in SQUARE
(Specifying Queries as Relational Expressions),
which predates System R project.
9
© Pearson Education Limited 1995, 2005
History of SQL
In late 70s, ORACLE appeared and was probably first
commercial RDBMS based on SQL.
In 1987, ANSI and ISO published an initial standard for
SQL.
In 1989, ISO published an addendum that defined an
‘Integrity Enhancement Feature’.
In 1992, first major revision to ISO standard occurred,
referred to as SQL2 or SQL/92.
In 1999, SQL:1999 was released with support for object-
oriented data management.
In late 2003, SQL:2003 was released.
10
© Pearson Education Limited 1995, 2005
Importance of SQL
SQL has become part of application architectures
such as IBM’s Systems Application Architecture.
It is strategic choice of many large and influential
organizations (e.g. X/OPEN).
SQL is Federal Information Processing Standard
(FIPS) to which conformance is required for all
sales of databases to American Government.
11
© Pearson Education Limited 1995, 2005
Importance of SQL
SQL is used in other standards and even
influences development of other standards as a
definitional tool. Examples include:
12
© Pearson Education Limited 1995, 2005
Writing SQL Commands
SQL statement consists of reserved words and user-
defined words.
13
© Pearson Education Limited 1995, 2005
Writing SQL Commands
Most components of an SQL statement are case
insensitive, except for literal character data.
More readable with indentation and lineation:
– Each clause should begin on a new line.
– Start of a clause should line up with start of
other clauses.
– If clause has several parts, should each appear
on a separate line and be indented under start
of clause.
14
© Pearson Education Limited 1995, 2005
Writing SQL Commands
Use extended form of BNF notation:
15
© Pearson Education Limited 1995, 2005
Literals
Literals are constants used in SQL statements.
16
© Pearson Education Limited 1995, 2005
SELECT Statement
SELECT [DISTINCT | ALL]
{* | [columnExpression [AS newName]] [,...] }
FROM TableName [alias] [, ...]
[WHERE condition]
[GROUP BY columnList] [HAVING condition]
[ORDER BY columnList]
17
© Pearson Education Limited 1995, 2005
SELECT Statement
FROM Specifies table(s) to be used.
WHERE Filters rows.
GROUP BY Forms groups of rows with same
column value.
HAVING Filters groups subject to some
condition.
SELECT Specifies which columns are to
appear in output.
ORDER BY Specifies the order of the output.
18
© Pearson Education Limited 1995, 2005
SELECT Statement
Order of the clauses cannot be changed.
19
© Pearson Education Limited 1995, 2005
Example 5.1 All Columns, All Rows
List full details of all staff.
SELECT *
FROM Staff;
20
© Pearson Education Limited 1995, 2005
Example 5.1 All Columns, All Rows
21
© Pearson Education Limited 1995, 2005
Example 5.2 Specific Columns, All Rows
Produce a list of salaries for all staff, showing only
staff number, first and last names, and salary.
22
© Pearson Education Limited 1995, 2005
Example 5.2 Specific Columns, All Rows
23
© Pearson Education Limited 1995, 2005