18. Tráön Nguyãn Phong
SELECT hoten,ngaysinh,hsluong
FROM nhanvien
ORDER BY 3
1.8 PhÐp hîp vµ to¸n tö UNION
To¸n tö UNION cho phÐp ta hîp c¸c kÕt qu¶ cña hai hay nhiÒu truy vÊn thµnh
mét tËp kÕt qu¶ duy nhÊt. Có ph¸p cña phÐp hîp nh sau:
Query_1
[UNION [ALL] Query_2 ]
...
[UNION [ALL] Query_N ]
[ORDER BY clause]
[COMPUTE clause]
Trong ®ã:
Query_1 cã d¹ng:
SELECT select_list
[INTO clause]
[FROM clause]
[WHERE clause]
[GROUP BY clause]
[HAVING clause]
vµ Query_i (i=2,..,N) cã d¹ng:
SELECT select_list
[FROM clause]
[WHERE clause]
[GROUP BY clause]
[HAVING clause]
VÝ dô 2.12: Gi¶ sö ta cã hai b¶ng nh sau:
R S
A B C E F
abc 3 5 edf 15
jks 5 7 hht 1
bdg 10 5 abc 3
Hht 12 0 adf 2
Th× phÐp hîp:
SELECT A,B FROM R
UNION
28. Tráön Nguyãn Phong
(SELECT [ALL|DISTINCT] subquery_select_list
[FROM {table_name|view_name} [optimizer_hints]
[[,table_name2|view_bame2} [optimizer_hints]
[...,table_name16|view_name16}[optimizer_hints]]]
[WHERE clause]
[GROUP BY clause]
[HAVING clause])
(1) WHERE expression [NOT]IN (subquery)
(2) WHERE expression comparison_operator [ANY|ALL](subquery)
(3) WHERE [NOT]EXISTS (subquery)
SELECT *
FROM nhanvien
WHERE madonvi NOT IN ( SELECT madonvi
FROM donvi
WHERE dienthoai like '82%')
30. Tráön Nguyãn Phong
UPDATE updated_table_name
SET colname = expression
[, ..., colname = expression ]
[FROM table_name [,..., table_name]]
[WHERE conditions ]
UPDATE nhanvien
SET hsluong = hsluong+0.2
WHERE madonvi ='04'
∞∞∞∞
×
UPDATE nhatkybanhang
SET thanhtien = soluong*mathang.dongia
FROM mathang
WHERE nhatkybanhang.mahang = mathang.mahang
DELETE [FROM] delete_table_name
[FROM table_name [,..., table_name]]
[WHERE conditions]
DELETE FROM nhanvien
31. Giaïo trçnh thæûc haình SQL
FROM donvi
WHERE nhanvien.madonvi = donvi.madonvi AND
donvi.dienthoai ='848484'
32. Tráön Nguyãn Phong
CChhææåånngg 33:: NNGGÄÄNN NNGGÆÆÎÎ ÂÂIIÃÃÖÖUU KKHHIIÃÃØØNN
GRANT ALL | statement [,...,statementN ]
TO account [,...,accountN]
GRANT ALL | permission [,...,permissionN]
ON table_name |view_name [(column1 [,...,columnN])]
|ON stored_procedure
TO account [,...,accountN]
•
•
•
•
•
•
•
•
33. Giaïo trçnh thæûc haình SQL
•
•
•
GRANT CREATE TABLE, CREATE VIEW
TO db_user
GRANT SELECT, UPDATE
ON nhanvien(hoten,diachi,dienthoai,hsluong)
TO db_user1, db_user2
REVOKE ALL | statement [,...,statementN]
FROM account [,...,accountN]
REVOKE ALL | permission [,...,permissionN]}
ON table_name | view_name [(column [,...,columnN])]
| stored_procedure
FROM account [,...,accountN ]