Tải bản đầy đủ (.ppt) (40 trang)

Oracle Database 10g SQL Fundamentals pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (153.89 KB, 40 trang )

Bản quyền thuộc COMMIT., JSC.
Oracle Database 10g:
SQL Fundamentals – Review
1-2
Bản quyền thuộc COMMIT., JSC.
SQL Statements

SELECT

Data Manipulation Language – DML

Transaction Control Language – TCL

Data Definition Language – DDL

Data Control Language – DCL
SELECT Statements

Syntax

SELECT * | {[DISTINCT] col|expr [[AS] alias],…}

FROM table | view | subquery

[WHERE {condition(s)}]

[GROUP BY col, ]

[HAVING {condition(s)}]

[ORDER BY {col, expr, alias} [ASC|DESC]]


1-3
Bản quyền thuộc COMMIT., JSC.
Single-Row Functions
Character Functions

Case-manipulation Functions

LOWER(col|expr)

UPPER(col|expr)

INITCAP(col|expr)

Character-manipulation Functions

CONCAT(col1|expr1, col2|expr2)

SUBSTR(col|expr, [m], [n])

LENGTH(col|expr)

INSTR(col|expr, ‘string’, [m], [n])

LPAD | RPAD (col|expr, n, ‘string’)

TRIM(leading|trailing|both ‘char’
FROM ‘source_string’)

REPLACE(text, search_str, replacement_str)
1-4

Bản quyền thuộc COMMIT., JSC.
Single-Row Functions
Number Functions

ROUND(col|expr, [n])

TRUNC(col|expr, [n])

MOD(m, n)
1-5
Bản quyền thuộc COMMIT., JSC.
Single-Row Functions
Date Functions

SYSDATE

MONTHS_BETWEEN(date1, date2)

ADD_MONTHS(date, n)

NEXT_DAY(date, ‘char’)

LAST_DAY(date)

ROUND(date[,’format_model’])

TRUNC(date[,’format_model’])
1-6
Bản quyền thuộc COMMIT., JSC.
Single-Row Functions

Conversion Functions

Date  Character

TO_CHAR(date, ‘format_model’)

Number  Character

TO_CHAR(number, ‘format_model’)

Character  Date

TO_DATE(char, ‘format_model’)

Character  Number

TO_NUMBER(char, ‘format_model’)
1-7
Bản quyền thuộc COMMIT., JSC.
Single-Row Functions
General Functions

NVL(expr1, expr2)

NVL2(expr1, expr2, expr3)

NULLIF(expr1, expr2)

COALESCE(expr1, expr2, , exprn)
1-8

Bản quyền thuộc COMMIT., JSC.
CASE Expression

CASE expr

WHEN comparison_expr1 THEN return_expr1

[WHEN comparison_expr2 THEN return_expr2



WHEN comparison_exprn THEN return_exprn

ELSE return_expr]
1-9
Bản quyền thuộc COMMIT., JSC.
DECODE Function
DECODE(col|expr,
search1, result1
[, search2, result2, ]
[, default]
1-10
Bản quyền thuộc COMMIT., JSC.
Group Functions
AVG([DISTINCT|ALL] col|expr)
COUNT({*|[DISTINCT|ALL] col|expr})
MAX([DISTINCT|ALL] col|expr)
MIN([DISTINCT|ALL] col|expr)
SUM([DISTINCT|ALL] col|expr)
STDDEV([DISTINCT|ALL] col|expr)

VARIANCE([DISTINCT|ALL] col|expr)
1-11
Bản quyền thuộc COMMIT., JSC.
Join Statements
Cross Join

SQL: 1999 Syntax
SELECT <select_clause>
FROM table1
CROSS JOIN table2

Oracle Syntax
SELECT <select_clause>
FROM table1, table2
1-12
Bản quyền thuộc COMMIT., JSC.
Join Statements
Natural Join

SQL: 1999 Syntax
SELECT <select_clause>
FROM table1
NATURAL JOIN table2

Oracle Syntax
SELECT <select_clause>
FROM table1, table2
WHERE {join_conditions}
1-13
Bản quyền thuộc COMMIT., JSC.

Join Statements
Join USING

SQL: 1999 Syntax
SELECT <select_clause>
FROM table1
JOIN table2 USING (column)

Oracle Syntax
SELECT <select_clause>
FROM table1, table2
WHERE {join_conditions}
1-14
Bản quyền thuộc COMMIT., JSC.
Join Statements
Join ON

SQL: 1999 Syntax
SELECT <select_clause>
FROM table1
JOIN table2 ON (conditions)

Oracle Syntax
SELECT <select_clause>
FROM table1, table2
WHERE {join_condition}
1-15
Bản quyền thuộc COMMIT., JSC.
Join Statements
Outer Joins


SQL: 1999 Syntax
SELECT <select_clause>
FROM table1
LEFT|RIGHT|FULL OUTER JOIN table2
ON (condition)

Oracle Syntax
SELECT <select_clause>
FROM table1, table2
WHERE table1.col1[(+)] = table2.col2[(+)]
1-16
Bản quyền thuộc COMMIT., JSC.
Join Statements
Self Join
SELECT <select_clause>
FROM table alias1, table alias2
WHERE alias1.col1 = alias2.col2
1-17
Bản quyền thuộc COMMIT., JSC.
Sub-Query

Syntax
SELECT <select_list>
FROM table
WHERE expr operator
(SELECT select_list
FROM table)

Classification


Single-row

Multiple-row
1-18
Bản quyền thuộc COMMIT., JSC.
Single-row Subquery

Return only one row

Operator:
=
>
<
>=
<=
<>
1-19
Bản quyền thuộc COMMIT., JSC.
Multiple-row Subquery

Return more than one row

Operator
IN
ALL
ANY
1-20
Bản quyền thuộc COMMIT., JSC.
Top-N Analysis


Syntax
SELECT ROWNUM, [column_list]
FROM (SELECT [column_list]
FROM table
ORDER BY top-N_column ASC|DESC)
WHERE ROWNUM <= N;

Notes:

ROWNUM: assigns a sequential value starting with 1 to each of
the rows returned from the query

A WHERE clause specifies the n rows to be returned. The
comparison operator must be < or <=
1-21
Bản quyền thuộc COMMIT., JSC.
Set Operator

UNION

UNION ALL

INTERSECT

MINUS
1-22
Bản quyền thuộc COMMIT., JSC.
DML Statements


INSERT INTO table[(column_list)]
VALUES (value_list)

UPDATE table
SET column = value
[,column = value…]
WHERE conditions

DELETE [FROM] table
WHERE conditions
1-23
Bản quyền thuộc COMMIT., JSC.
DML Statements

MERGE INTO table1
USING table2 ON (condition)
WHEN MATCHED THEN
UPDATE SET
column = value
[, column = value…]
DELETE WHERE conditions
WHEN NOT MATCHED THEN
INSERT [(column_list)]
VALUES (value_list)
1-24
Bản quyền thuộc COMMIT., JSC.
Transaction Control

COMMIT


ROLLBACK

SAVEPOINT [name]

ROLLBACK TO SAVEPOINT [name]
1-25
Bản quyền thuộc COMMIT., JSC.

×