Вы находитесь на странице: 1из 24

Chapter 7

SQL Statements
SELECT
INSERT
UPDATE
DELETE
MERGE
CREATE
ALTER
DROP
RENAME
TRUNCATE
COMMIT
ROLLBACK
SAVEPOINT
GRANT
REVOKE

Data retrieval
Data manipulation language (DML)

Data definition language (DDL)

Transaction control

Data control language (DCL)

Tables
Used
in
the
Course
EMPLOYEES

DEPARTMENTS

JOB_GRADES

Basic SELECT Statement


SELECT
SELECT
FROM
FROM

*|{[DISTINCT]
*|{[DISTINCT] column|expression
column|expression [alias],...}
[alias],...}
table;
table;

SELECT identifies what columns


FROM identifies which table

Selecting All Columns


SELECT *
FROM
departments;

Selecting Specific Columns


SELECT department_id, location_id
FROM
departments;

Using Column Aliases


SELECT last_name AS name, commission_pct comm
FROM
employees;

SELECT last_name "Name", salary*12 "Annual Salary"


FROM
employees;

Eliminating Duplicate Rows


Eliminate duplicate rows by using the DISTINCT
keyword in the SELECT clause.
SELECT DISTINCT department_id
FROM
employees;

Limiting Rows Using a


Selection
EMPLOYEES

retrieve all
employees
in department
90

Limiting the Rows Selected


Restrict the rows returned by using the WHERE
clause.
SELECT
FROM
[WHERE

*|{[DISTINCT] column|expression [alias],...}


table
condition(s)];

The WHERE clause follows the FROM clause.

Using the WHERE Clause


SELECT employee_id, last_name, job_id, department_id
FROM
employees
WHERE department_id = 90 ;

Character Strings and Dates


Character strings and date values are enclosed in
single quotation marks.
Character values are case sensitive, and date
values are format sensitive.
The default date format is DD-MON-RR.
SELECT last_name, job_id, department_id
FROM
employees
WHERE last_name = 'Whalen';

Using Comparison
Conditions
SELECT last_name, salary
FROM
employees
WHERE salary <= 3000;

Using the NOT Operator


SELECT last_name, job_id
FROM
employees
WHERE job_id
NOT IN ('IT_PROG', 'ST_CLERK', 'SA_REP');

Processing Multiple Tables


Joina relational operation that causes two

or more tables with a common domain to be


combined into a single table or view

Equi-joina join in which the joining

condition is based on equality between values


in the common columns; common columns
appear redundantly in the result table

Natural joinan equi-join in which one of


the duplicate columns is eliminated in the
result table

The common columns in joined tables are usually the primary key
of the dominant table and the foreign key of the dependent table in
1:M relationships
15

Processing Multiple Tables


Outer joina join in which rows that do

not have matching values in common


columns are nonetheless included in the
result table (as opposed to inner join, in
which rows must have matching values in
order to appear in the result table)
Union joinincludes all columns from
each table in the join, and an instance for
each row of each table
Self joinMatching rows of a table with
other rows from the same table
16

17

Using Table Aliases


Simplify queries by using table aliases.
Improve performance by using table
prefixes.
SELECT e.employee_id, e.last_name, e.department_id,
FROM
WHERE

d.department_id, d.location_id
employees e , departments d
e.department_id = d.department_id;

Вам также может понравиться