ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
204204 Database Design & Development
2
วัตถุประสงค์ สามารถอธิบายแนวคิดและการใช้ SQL ได้
3
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
4
SQL S-Q-L (See-Quel) Structured Query Language
สำหรับใช้กับ Relational Database อยู่ในรูปแบบของภาษาอังกฤษ
5
SQL Structured Query Language คุณสมชายเบอร์อะไรครับ? ผู้ถาม ผู้ตอบ
6
SQL Structured Query Language
แสดงรายชื่อพนักงานที่มีรายได้ระหว่าง 10,000 ถึง 20,000 บาทต่อเดือน
7
SQL Structured Query Language
บอกหน่อยสิครับว่าใครเป็นพนักงานที่มีรายได้ระหว่าง 10,000 ถึง 20,000 บาทต่อเดือน
8
SQL Structured Query Language
บอกหน่อยสิคะว่าใครเป็นพนักงานที่มีเงินเดือนระหว่าง 10,000 ถึง 20,000 บาท
9
SQL Structured Query Language
บอกหน่อยสิครับ/คะว่าใครบ้างในบริษัทที่มีเงินเดือนระหว่าง 10,000 ถึง 20,000 บาท
10
SQL Structured Query Language
แสดงรายชื่อพนักงานที่มีรายได้ระหว่าง 10,000 ถึง 20,000 บาท SELECT emp_name FROM employee WHERE emp_salary > 10,000 AND emp_salary < 20,000
11
SQL สำหรับใช้กับ Relational Database
12
SQL SELECT cusname FROM customer
13
SQL SELECT cusname, orderid FROM customer c, order o
WHERE c.cusid = o.cusrid
14
SQL S-Q-L (See-Quel) Structured Query Language
สำหรับใช้กับ Relational Database อยู่ในรูปแบบของภาษาอังกฤษ
15
SQL SELECT emp_name FROM employee
WHERE emp_salary > 10,000 AND emp_salary < 20,000 เลือก emp_name จาก employee โดยที่ emp_salary > 10,000 และ emp_salary < 20,000
16
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
17
วิวัฒนาการของ SQL 1974 IBM SEQUEL ‘Structured English Query Language’
1976 IBM SEQUEL/2 for IBM System R (DB/2) 1986 ANSI (American National Standards Institute) 1987 ISO (International Standards Organization) SQL-92 (SQL2), SQL3
18
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
19
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
Schema
20
ภาษาที่ใช้สำหรับนิยามข้อมูล
Schema book book_id book_name author publisher 0001 Khoo Kum Thomyante Dok Ya member member_id member_name address phone_no 0001 Somchai Sae Tae 56 Moo 6, …
21
ภาษาที่ใช้สำหรับนิยามข้อมูล
Schema book book_id book_name author publisher member member_id member_name address phone_no
22
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE เปลี่ยนแปลงตาราง – ALTER ลบ – DROP
23
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE CREATE TABLE <ชื่อตาราง> ( <ชื่อคอลัมน์ ประเภทข้อมูล> [,<ชื่อคอลัมน์ ประเภทข้อมูล>]… )
24
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE CREATE TABLE <ชื่อตาราง> ( <ชื่อคอลัมน์ ประเภทข้อมูล> [,<ชื่อคอลัมน์ ประเภทข้อมูล>]… ) CREATE TABLE book ( book_id varchar(7), book_name varchar(100) )
25
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE CREATE TABLE <ชื่อตาราง> ( <ชื่อคอลัมน์ ประเภทข้อมูล> [,<ชื่อคอลัมน์ ประเภทข้อมูล>]… ) CREATE TABLE book ( book_id varchar(7), book_name varchar(100) )
26
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE CREATE TABLE <ชื่อตาราง> ( <ชื่อคอลัมน์ ประเภทข้อมูล> [,<ชื่อคอลัมน์ ประเภทข้อมูล>]… ) CREATE TABLE book ( book_id varchar(7), book_name varchar(100) )
27
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
สร้างตาราง – CREATE CREATE TABLE <ชื่อตาราง> ( <ชื่อคอลัมน์ ประเภทข้อมูล> [,<ชื่อคอลัมน์ ประเภทข้อมูล>]… ) CREATE TABLE book ( book_id varchar(7), book_name varchar(100) )
28
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
สร้างตาราง – CREATE CREATE TABLE book ( book_id varchar(7) PRIMARY KEY, book_name varchar(100) )
29
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
สร้างตาราง – CREATE CREATE TABLE book ( book_id varchar(7), book_name varchar(100) ) book book_id book_name
30
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE
31
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
สร้างตาราง – CREATE book book_id book_name
32
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
สร้างตาราง – CREATE CREATE TABLE member ( member_id varchar(7), member_name varchar(50) ) book book_id book_name member member_id member_name
33
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
สร้างตาราง – CREATE CREATE TABLE staff ( staff_id varchar(7) NOT NULL, staff_name varchar(50) ) book book_id book_name member member_id member_name staff staff_id staff_name
34
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>
35
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>) ALTER TABLE book (ADD author VARCHAR(50))
36
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>) ALTER TABLE book (ADD author varchar(50))
37
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>) ALTER TABLE book (ADD author varchar(50))
38
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>) ALTER TABLE book (ADD author varchar(50))
39
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>) ALTER TABLE book (ADD author varchar(50)) book book_id book_name
40
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE book (ADD author varchar(50)) book book_id book_name
41
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE book (ADD author varchar(50)) book book_id book_name
42
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE book (ADD author varchar(50)) book book_id book_name author
43
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE book (ADD author varchar(50)) book book_id book_name book book_id book_name author
44
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>) ALTER TABLE book (ALTER COLUMN author varchar(100))
45
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE book (ALTER COLUMN author varchar(100)) book book_id varchar(7) book_name varchar(100) author (50) book book_id varchar(7) book_name varchar(100) author (100)
46
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>) ALTER TABLE book (ALTER COLUMN author varchar(100))
47
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE book (ALTER COLUMN author varchar(100)) book book_id varchar(7) book_name varchar(100) author (50) book book_id varchar(7) book_name varchar(100) author (100)
48
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE <ชื่อตารางที่จะเปลี่ยนแปลง> (<คำสั่งการเปลี่ยนแปลง> <ชื่อคอลัมน์ ประเภทข้อมูล>) ALTER TABLE book (DROP author)
49
ภาษาที่ใช้สำหรับนิยามข้อมูล
เปลี่ยนแปลงตาราง – ALTER ALTER TABLE book (DROP author) book book_id varchar(7) book_name varchar(100) author (50) book book_id varchar(7) book_name varchar(100)
50
ภาษาที่ใช้สำหรับนิยามข้อมูล
ลบตาราง – DROP CREATE TABLE <ชื่อตาราง>
51
ภาษาที่ใช้สำหรับนิยามข้อมูล
ลบตาราง – DROP DROP TABLE <ชื่อตาราง> DROP TABLE <staff> DROP TABLE <book>
52
ภาษาที่ใช้สำหรับนิยามข้อมูล
ลบตาราง – DROP DROP TABLE <ชื่อตาราง> DROP TABLE <staff> DROP TABLE <book>
53
ภาษาที่ใช้สำหรับนิยามข้อมูล
ลบตาราง – DROP DROP TABLE <staff> book book_id book_name member member_id member_name DROP TABLE <book> staff staff_id staff_name
54
ภาษาที่ใช้สำหรับนิยามข้อมูล
ลบตาราง – DROP DROP TABLE <staff> book book_id book_name member member_id member_name DROP TABLE <book>
55
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE เปลี่ยนแปลงตาราง – ALTER ลบ – DROP
56
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE เปลี่ยนแปลงตาราง – ALTER ลบ – DROP CREATE TABLE book ( book_id varchar(7), book_name varchar(100) )
57
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE เปลี่ยนแปลงตาราง – ALTER ลบ – DROP ALTER TABLE book (ADD author varchar(50))
58
ภาษาที่ใช้สำหรับนิยามข้อมูล
สร้างตาราง – CREATE เปลี่ยนแปลงตาราง – ALTER ลบ – DROP DROP TABLE book
59
ภาษาที่ใช้สำหรับนิยามข้อมูล
ชนิดข้อมูล Binary , VDO, แฟ้มข้อมูล Character char, varchar Date and Time DateTime – ‘12/09/2003’ Floating Point float – ‘122.33’ Integer BigInt, int, SmallInt int – ตัวเลขจำนวนเต็มตั้งแต่ –32,768 ถึง 32,767 Monetary money
60
ภาษาที่ใช้สำหรับนิยามข้อมูล
ชนิดข้อมูล Character char, varchar char(10) H e l o varchar(10) H e l H e l o
61
ภาษาที่ใช้สำหรับนิยามข้อมูล
CREATE INDEX DROP INDEX CREATE VIEW DROP VIEW
62
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book เพิ่มข้อมูล book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
63
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book เพิ่มข้อมูล book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 หลอดของลิง สมโชค book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
64
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book Query ที่ใช้บ่อย: แสดงรายชื่อหนังสือเรียงตามลำดับตัวอักษร book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 หลอดของลิง สมโชค
65
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
INDEX Query ที่ใช้บ่อย: แสดงรายชื่อหนังสือเรียงตามลำดับตัวอักษร book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 หลอดของลิง สมโชค book_name ก ข ฃ ค ฅ ฆ ง จ ฉ ช ซ ฌ ญ ฎ ฏ ฐ ฑ ฒ ณ ด ต ถ ท ธ น บ ป ผ ฝ พ ฟ ภ ม ย ร ล ว ศ ษ ส ห ฬ อ ฮ
66
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
INDEX book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 หลอดของลิง สมโชค book_name คู่กรรม ก ข ฃ ค ฅ ฆ ง จ ฉ ช ซ ฌ ญ ฎ ฏ ฐ ฑ ฒ ณ ด ต ถ ท ธ น บ ป ผ ฝ พ ฟ ภ ม ย ร ล ว ศ ษ ส ห ฬ อ ฮ
67
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 หลอดของลิง สมโชค book_name คู่กรรม ดาวพระศุกร์ ก ข ฃ ค ฅ ฆ ง จ ฉ ช ซ ฌ ญ ฎ ฏ ฐ ฑ ฒ ณ ด ต ถ ท ธ น บ ป ผ ฝ พ ฟ ภ ม ย ร ล ว ศ ษ ส ห ฬ อ ฮ
68
ภาษาที่ใช้สำหรับนิยามข้อมูลที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
INDEX book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 หลอดของลิง สมโชค book_name คู่กรรม ดาวพระศุกร์ บ้านทรายทอง ก ข ฃ ค ฅ ฆ ง จ ฉ ช ซ ฌ ญ ฎ ฏ ฐ ฑ ฒ ณ ด ต ถ ท ธ น บ ป ผ ฝ พ ฟ ภ ม ย ร ล ว ศ ษ ส ห ฬ อ ฮ
69
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 หลอดของลิง สมโชค book_name คู่กรรม ดาวพระศุกร์ บ้านทรายทอง พระเสาร์แทรก ก ข ฃ ค ฅ ฆ ง จ ฉ ช ซ ฌ ญ ฎ ฏ ฐ ฑ ฒ ณ ด ต ถ ท ธ น บ ป ผ ฝ พ ฟ ภ ม ย ร ล ว ศ ษ ส ห ฬ อ ฮ
70
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 หลอดของลิง สมโชค book_name คู่กรรม ดาวพระศุกร์ บ้านทรายทอง พระเสาร์แทรก หลอดของลิง ก ข ฃ ค ฅ ฆ ง จ ฉ ช ซ ฌ ญ ฎ ฏ ฐ ฑ ฒ ณ ด ต ถ ท ธ น บ ป ผ ฝ พ ฟ ภ ม ย ร ล ว ศ ษ ส ห ฬ อ ฮ
71
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX Query ที่ใช้บ่อย: แสดงรายชื่อหนังสือเรียงตามลำดับตัวอักษร book index on book_name book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง book_name address คู่กรรม 1 ดาวพระศุกร์ 3 บ้านทรายทอง 2 พระเสาร์แทรก 4 (1) (2) (3) (4)
72
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
INDEX Query ที่ใช้บ่อย: แสดงรายชื่อหนังสือและผู้แต่งเรียงตามลำดับตัวอักษร book index on book_name book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง book_name address คู่กรรม 1 ดาวพระศุกร์ 3 บ้านทรายทอง 2 พระเสาร์แทรก 4 (1) (2) (3) (4)
73
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
INDEX Query ที่ใช้บ่อย: แสดงรายชื่อหนังสือและผู้แต่งเรียงตามลำดับตัวอักษร book index on book_name book_name author คู่กรรม ทมยันตี ดาวพระศุกร์ พลูโต บ้านทรายทอง สมชาย พระเสาร์แทรก สมหญิง book_name author คู่กรรม ทมยันตี บ้านทรายทอง สมชาย ดาวพระศุกร์ พลูโต พระเสาร์แทรก สมหญิง book_name address คู่กรรม 1 ดาวพระศุกร์ 3 บ้านทรายทอง 2 พระเสาร์แทรก 4 (1) (2) (3) (4)
74
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book เพิ่มข้อมูล book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
75
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book index on book_name book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง book_name address คู่กรรม 1 ดาวพระศุกร์ 3 บ้านทรายทอง 2 พระเสาร์แทรก 4 ก ข ฃ ค ฅ ฆ ง จ ฉ ช ซ ฌ ญ ฎ ฏ ฐ ฑ ฒ ณ ด ต ถ ท ธ น บ ป ผ ฝ พ ฟ ภ ม ย ร ล ว ศ ษ ส ห ฬ อ ฮ
76
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX book index on book_name book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง book_name address คู่กรรม 1 ดาวพระศุกร์ 3 นางทาส 5 บ้านทรายทอง 2 พระเสาร์แทรก 4 ก ข ฃ ค ฅ ฆ ง จ ฉ ช ซ ฌ ญ ฎ ฏ ฐ ฑ ฒ ณ ด ต ถ ท ธ น บ ป ผ ฝ พ ฟ ภ ม ย ร ล ว ศ ษ ส ห ฬ อ ฮ
77
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX Query ที่ใช้บ่อย: แสดงรายชื่อหนังสือเรียงตามลำดับตัวอักษร book index on book_name book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง book_name address คู่กรรม 1 ดาวพระศุกร์ 3 นางทาส 5 บ้านทรายทอง 2 พระเสาร์แทรก 4
78
ภาษาที่ใช้สำหรับนิยามข้อมูล
INDEX Query ที่ใช้บ่อย: แสดงรายชื่อหนังสือและผู้แต่งเรียงตามลำดับตัวอักษร book index on book_name book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง book_name address คู่กรรม 1 ดาวพระศุกร์ 3 นางทาส 5 บ้านทรายทอง 2 พระเสาร์แทรก 4
79
ภาษาที่ใช้สำหรับนิยามข้อมูล
CREATE INDEX DROP INDEX
80
ภาษาที่ใช้สำหรับนิยามข้อมูล
CREATE INDEX CREATE INDEX ON <ชื่อตาราง(ชื่อคอลัมน์)> CREATE INDEX <ชื่ออินเด็กซ์> ON <ชื่อตาราง(ชื่อคอลัมน์)>
81
ภาษาที่ใช้สำหรับนิยามข้อมูล
CREATE INDEX CREATE INDEX <ชื่ออินเด็กซ์> ON <ชื่อตาราง(ชื่อคอลัมน์)> CREATE INDEX book_name_idx ON book(book_name)
82
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
CREATE INDEX CREATE INDEX book_name_idx ON book(book_name) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค
83
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
CREATE INDEX book_name_idx ON book(book_name) book index on book_name book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_name address คู่กรรม 1 ดาวพระศุกร์ 3 นางทาส 5 บ้านทรายทอง 2 พระเสาร์แทรก 4
84
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
CREATE INDEX CREATE INDEX <ชื่ออินเด็กซ์> ON <ชื่อตาราง(ชื่อคอลัมน์)> CREATE INDEX book_name_idx ON book(book_name) DROP INDEX DROP INDEX <ชื่ออินเด็กซ์> DROP INDEX book_name_idx
85
ภาษาที่ใช้สำหรับนิยามข้อมูล
DROP INDEX book_name_idx book index on book_name book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_name address คู่กรรม 1 ดาวพระศุกร์ 3 นางทาส 5 บ้านทรายทอง 2 พระเสาร์แทรก 4
86
ภาษาที่ใช้สำหรับนิยามข้อมูล
CREATE INDEX DROP INDEX CREATE VIEW DROP VIEW
87
ภาษาที่ใช้สำหรับนิยามข้อมูล
VIEW
88
ภาษาที่ใช้สำหรับนิยามข้อมูล
VIEW วิว (View) เปรียบเสมือนหน้าต่างของข้อมูลจากตารางหนึ่ง ๆ ที่ถูกเรียกเพื่อทำการเปลี่ยนแปลงข้อมูล วิวเป็นตารางเสมือนจริง (Virtual Table) ที่มีข้อมูลมาจากตารางหลัก (Base Table) โดยไม่มีข้อมูลเก็บอยู่จริง
89
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
VIEW ประโยชน์ของวิว คือ ผู้ใช้ในระบบสามารถเรียกดูข้อมูลจากฐานข้อมูลในลักษณะที่ผู้ใช้นั้น ๆ ต้องการ โดยใช้คำสั่งง่าย ๆ เพื่อกำหนดระดับการมองเห็นข้อมูล
90
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
VIEW member member_id name address login_name password 0001 Neo Zion neo ***** 0002 Trinity trin 0003 Morpheus mp 0004 Smith Matrix smith
91
ภาษาที่ใช้สำหรับนิยามข้อมูล
Programmer member_programmer VIEW login password neo ***** trin mp smith member member_id name address login password 0001 Neo Zion neo ***** 0002 Trinity trin 0003 Morpheus mp 0004 Smith Matrix smith member_library name address Neo Zion Trinity Morpheus Smith Matrix Database Administrator – DBA บรรณารักษ์
92
ภาษาที่ใช้สำหรับนิยามข้อมูล
CREATE VIEW CREATE VIEW <ชื่อวิว> AS <SELECT Statement> CREATE VIEW member_library AS SELECT name, address FROM member
93
ภาษาที่ใช้สำหรับนิยามข้อมูล
CREATE VIEW member_library AS SELECT name, address FROM member member member_library member_id name address login password 0001 Neo Zion neo ***** 0002 Trinity trin 0003 Morpheus mp 0004 Smith Matrix smith name address Neo Zion Trinity Morpheus Smith Matrix
94
ภาษาที่ใช้สำหรับนิยามข้อมูล
SELECT * FROM member_library member member_library member_id name address login password 0001 Neo Zion neo ***** 0002 Trinity trin 0003 Morpheus mp 0004 Smith Matrix smith name address Neo Zion Trinity Morpheus Smith Matrix
95
ภาษาที่ใช้สำหรับนิยามข้อมูล
CREATE VIEW member_programmer AS SELECT login, programmer FROM member member member_programmer member_id name address login password 0001 Neo Zion neo ***** 0002 Trinity trin 0003 Morpheus mp 0004 Smith Matrix smith login password neo ***** trin mp smith CREATE VIEW <ชื่อวิว> AS <SELECT STATEMENT>
96
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
SELECT * FROM member_programmer member member_programmer member_id name address login password 0001 Neo Zion neo ***** 0002 Trinity trin 0003 Morpheus mp 0004 Smith Matrix smith login password neo ***** trin mp smith
97
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
CREATE VIEW CREATE VIEW <ชื่อวิว> AS <SELECT Statement> DROP VIEW DROP VIEW <ชื่อวิว>
98
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL)
Programmer member_programmer DROP VIEW member_programmer login password neo ***** trin mp smith member member_id name address login password 0001 Neo Zion neo ***** 0002 Trinity trin 0003 Morpheus mp 0004 Smith Matrix smith member_library name address Neo Zion Trinity Morpheus Smith Matrix Database Administrator – DBA บรรณารักษณ์
99
ภาษาที่ใช้สำหรับนิยามข้อมูล
DROP VIEW member_library member member_id name address login password 0001 Neo Zion neo ***** 0002 Trinity trin 0003 Morpheus mp 0004 Smith Matrix smith member_library name address Neo Zion Trinity Morpheus Smith Matrix Database Administrator – DBA บรรณารักษณ์
100
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
101
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
SELECT INSERT DELETE UPDATE
102
ภาษาสำหรับจัดการข้อมูล
SELECT – แสดงข้อมูล SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> FROM <ชื่อตาราง> WHERE <เงื่อนไขตามที่ระบุ>
103
ภาษาสำหรับจัดการข้อมูล
SELECT เลือก <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> จาก <ชื่อตาราง> โดยที่ <เงื่อนไขตามที่ระบุ>
104
ภาษาสำหรับจัดการข้อมูล
SELECT SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> FROM <ชื่อตาราง> WHERE <เงื่อนไขตามที่ระบุ>
105
Restrict
106
Restrict รูปแบบ ชื่อรีเลชั่น WHERE <CONDITION>
condition(Relation)
107
Restrict จังหวัด=‘นครราชสีมา’(นักศึกษา) ตัวอย่าง นักศึกษา รหัส ชื่อ
B001 แดง นครราชสีมา B002 ดำ กรุงเทพฯ B003 เขียว สระบุรี B004 ขาว จังหวัด=‘นครราชสีมา’(นักศึกษา)
108
Restrict จังหวัด=‘นครราชสีมา’(นักศึกษา) ตัวอย่าง นักศึกษา รหัส ชื่อ
B001 แดง นครราชสีมา B002 ดำ กรุงเทพฯ B003 เขียว สระบุรี B004 ขาว จังหวัด=‘นครราชสีมา’(นักศึกษา)
109
Restrict จังหวัด=‘นคราชสีมา’(นักศึกษา) ตัวอย่าง นักศึกษา รหัส ชื่อ
B001 แดง นครราชสีมา B002 ดำ กรุงเทพฯ B003 เขียว สระบุรี B004 ขาว จังหวัด=‘นคราชสีมา’(นักศึกษา)
110
Restrict จังหวัด=‘นคราชสีมา’(นักศึกษา) ตัวอย่าง นักศึกษา รหัส ชื่อ
B001 แดง นครราชสีมา B004 ขาว จังหวัด=‘นคราชสีมา’(นักศึกษา)
111
Project
112
Project รูปแบบ ชื่อรีเลชั่น [ชื่อแอททริบิวต์ 1, ชื่อแอททริบิวต์ 2, …]
ชื่อแอททริบิวต์ 1, ชื่อแอททริบิวต์ 2, …(Relation)
113
Project ตัวอย่าง จังหวัด(นักศึกษา) นักศึกษา รหัส ชื่อ จังหวัด
สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด(นักศึกษา)
114
Project ตัวอย่าง จังหวัด(นักศึกษา) นักศึกษา รหัส ชื่อ จังหวัด
สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด(นักศึกษา)
115
Project ตัวอย่าง จังหวัด(นักศึกษา) นักศึกษา รหัส ชื่อ จังหวัด
สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด(นักศึกษา)
116
Project ตัวอย่าง จังหวัด(นักศึกษา) นักศึกษา จังหวัด นครราชสีมา
กรุงเทพฯ สระบุรี จังหวัด(นักศึกษา)
117
ภาษาสำหรับจัดการข้อมูล
SELECT SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> FROM <ชื่อตาราง> [WHERE <เงื่อนไขตามที่ระบุ>] attribute(Relation) condition(Relation)
118
ภาษาสำหรับจัดการข้อมูล
Nested SELECT Statement SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> FROM <ชื่อตาราง> WHERE <ชื่อคอลัมน์> IN ( SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> WHERE <เงื่อนไข> )
119
ภาษาสำหรับจัดการข้อมูล
SELECT SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> FROM <ชื่อตาราง> [WHERE <เงื่อนไขตามที่ระบุ>] SELECT book_name, author FROM book
120
ภาษาสำหรับจัดการข้อมูล
SELECT book_name, author FROM book book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค
121
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
SELECT book_name, author FROM book book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_name, author(book)
122
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
SELECT book_name, author FROM book book_name author คู่กรรม ทมยันตี บ้านทรายทอง สมชาย ดาวพระศุกร์ พลูโต พระเสาร์แทรก สมหญิง นางทาส สมโชค book_name, author(book)
123
ภาษาสำหรับจัดการข้อมูล
SELECT book_name, author FROM book WHERE book_id = ‘0001’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค
124
ภาษาสำหรับจัดการข้อมูล
SELECT book_name, author FROM book WHERE book_id = ‘0001’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า book_id=‘0001’(book)
125
ภาษาสำหรับจัดการข้อมูล
SELECT book_name, author FROM book WHERE book_id = ‘0001’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า book_name, author((book_id=‘0001’(book))
126
ภาษาสำหรับจัดการข้อมูล
SELECT book_name, author FROM book WHERE book_id = ‘0001’ book_name author คู่กรรม ทมยันตี book_name, author((book_id=‘0001’(book))
127
ภาษาสำหรับจัดการข้อมูล
SELECT book_name, author FROM book WHERE book_id = ‘0001’ book_name author คู่กรรม ทมยันตี
128
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
SELECT book_name, author FROM book WHERE book_id = ‘0001’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค book_name, author(book)
129
ภาษาสำหรับจัดการข้อมูล
Boolean Function Group, Order, Having
130
ภาษาสำหรับจัดการข้อมูล
Boolean AND OR NOT
131
ภาษาสำหรับจัดการข้อมูล
Boolean = > หรือ >= < หรือ <= <>
132
ภาษาสำหรับจัดการข้อมูล
Function COUNT SUM AVG MAX MIN DISTINCT
133
ภาษาสำหรับจัดการข้อมูล
GROUP BY ORDER BY HAVING
134
Restrict ตัวอย่าง นักศึกษา รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง
นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์
135
Restrict จังหวัด =‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา)
ตัวอย่าง นักศึกษา รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด =‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา)
136
Restrict จังหวัด=‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา)
137
Restrict จังหวัด=‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา)
138
Restrict จังหวัด=‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา)
139
Restrict จังหวัด=‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา จังหวัด=‘นครราชสีมา’ AND สาขาวิชา=‘โยธา’(นักศึกษา)
140
Restrict ตัวอย่าง นักศึกษา รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง
นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์
141
Restrict จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา)
142
Restrict จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา)
143
Restrict จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา)
144
Restrict จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา)
145
Restrict จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B002 ดำ กรุงเทพฯ โทรคมนาคม B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา)
146
Restrict จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา) ตัวอย่าง
รหัส ชื่อ จังหวัด สาขาวิชา B001 แดง นครราชสีมา โยธา B003 เขียว สระบุรี B004 ขาว คอมพิวเตอร์ จังหวัด=‘นครราชสีมา’ OR สาขาวิชา=‘โยธา’(นักศึกษา)
147
ภาษาสำหรับจัดการข้อมูล
แสดงรายละเอียดของหนังสือทุกคอลัมน์ที่ผู้แต่งคือคุณสมชาย และมีราคาต่ำกว่า 300 บาท book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0007 พจมาน สว่างวงศ์ ใบไม้ 400.00 condition(Relation) SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> FROM <ชื่อตาราง> WHERE <เงื่อนไขตามที่ระบุ>
148
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE author = ‘สมชาย’ AND price < 300 book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0007 พจมาน สว่างวงศ์ ใบไม้ 400.00 condition(Relation) SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> FROM <ชื่อตาราง> WHERE <เงื่อนไขตามที่ระบุ>
149
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE author = ‘สมชาย’ AND price < 300 book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0007 พจมาน สว่างวงศ์ ใบไม้ 400.00 condition(Relation)
150
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE author = ‘สมชาย’ AND price < 300 book book_id book_name author publisher price 0002 บ้านทรายทอง สมชาย ดอกหญ้า 250.00 condition(Relation)
151
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
แสดงรายละเอียดของหนังสือทุกคอลัมน์ที่ผู้แต่งคือคุณสมชาย หรือหนังสือที่มีราคาต่ำกว่า 300 บาท book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0007 พจมาน สว่างวงศ์ ใบไม้ 400.00 condition(Relation) SELECT <ชื่อคอลัมน์ที่ต้องการดูข้อมูล> FROM <ชื่อตาราง> WHERE <เงื่อนไขตามที่ระบุ>
152
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
SELECT * FROM book WHERE author = ‘สมชาย’ OR price < 300 book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0007 พจมาน สว่างวงศ์ ใบไม้ 400.00 condition(Relation)
153
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE author = ‘สมชาย’ OR price < 300 book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0007 พจมาน สว่างวงศ์ ใบไม้ 400.00 condition(Relation)
154
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE author = ‘สมชาย’ OR price < 300 book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0007 พจมาน สว่างวงศ์ ใบไม้ 400.00 condition(Relation)
155
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE author = ‘สมชาย’ OR price < 300 book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0007 พจมาน สว่างวงศ์ ใบไม้ 400.00 condition(Relation)
156
ภาษาสำหรับจัดการข้อมูล
แสดงรายการหนังสือทั้งหมดที่ทราบราคาแล้ว book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL condition(Relation)
157
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE price IS NOT NULL book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL condition(Relation)
158
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE price IS NOT NULL book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL condition(Relation)
159
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book WHERE price IS NOT NULL book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 condition(Relation)
160
ภาษาสำหรับจัดการข้อมูล
Function COUNT – นับจำนวน SUM – หาผลรวมของคอลัมน์ AVG – หาค่าเฉลี่ยของคอลัมน์ MAX – หาค่ามากที่สุดของคอลัมน์ MIN – หาค่าน้อยที่สุดของคอลัมน์ DISTINCT – แสดงเฉพาะข้อมูลที่แตกต่าง หากมีข้อมูลซ้ำกัน ให้แสดงเพียงเรคคอร์ดเดียว
161
Function – Relational Calculus
รูปแบบ FUNCTION(expression) ตัวอย่าง SUM(spx.qty)
162
แคลคูลัสเชิงสัมพันธ์ (Calculus Algebra)
Target Item For All Exists Function relation.attribute AS variable FORALL relation(condition) EXISTS variable(condition) FUNCTION(expression)
163
ภาษาสำหรับจัดการข้อมูล
SELECT COUNT (price) FROM book WHERE price < 300 book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL (No column name) 3
164
Target Item – Relational Calculus
รูปแบบ Relation.Attribute As Variable ตัวอย่าง SX.S# AS SNO
165
ภาษาสำหรับจัดการข้อมูล
SELECT COUNT (price) AS bookcount FROM book WHERE price < 300 book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL bookcount 3 condition(Relation) Relation.Attribute As Variable
166
ภาษาสำหรับจัดการข้อมูล
SELECT SUM(price) AS ราคารวม FROM book book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL ราคารวม 1,020.00
167
ภาษาสำหรับจัดการข้อมูล
SELECT AVG(price) AS myaverage FROM book book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL myaverage 255.00
168
ภาษาสำหรับจัดการข้อมูล
SELECT MIN(price) FROM book book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL (No column name) 220.00
169
ภาษาสำหรับจัดการข้อมูล
SELECT MAX(price) AS ‘Max Price’ FROM book book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL Max Price 300.00
170
ภาษาสำหรับจัดการข้อมูล
Function COUNT – นับจำนวน SUM – หาผลรวมของคอลัมน์ AVG – หาค่าเฉลี่ยของคอลัมน์ MAX – หาค่ามากที่สุดของคอลัมน์ MIN – หาค่าน้อยที่สุดของคอลัมน์ DISTINCT – แสดงเฉพาะข้อมูลที่แตกต่าง หากมีข้อมูลซ้ำกัน ให้แสดงเพียงเรคคอร์ดเดียว
171
ภาษาสำหรับจัดการข้อมูล
SELECT DISTINCT price FROM book book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL price 250.00 220.00 300.00
172
ภาษาสำหรับจัดการข้อมูล
GROUP BY ORDER BY HAVING
173
ภาษาสำหรับจัดการข้อมูล
ORDER BY
174
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book ORDER BY price book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL
175
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book ORDER BY price book book_id book_name author publisher price 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL 0003 ดาวพระศุกร์ พลูโต ดอกหญ้า 220.00 0001 คู่กรรม ทมยันตี 250.00 0002 บ้านทรายทอง สมชาย 0004 พระเสาร์แทรก สมหญิง 300.00
176
ภาษาสำหรับจัดการข้อมูล
SELECT * FROM book ORDER BY price DESC book book_id book_name author publisher price 0004 พระเสาร์แทรก สมหญิง ดอกหญ้า 300.00 0003 ดาวพระศุกร์ พลูโต 220.00 0002 บ้านทรายทอง สมชาย 250.00 0001 คู่กรรม ทมยันตี 0008 เขาว่าผมฆ่าพี่ห้าง นพดล NULL
177
ภาษาสำหรับจัดการข้อมูล
SELECT publisher, MAX(price) AS mprice FROM book GROUP BY publisher book book_id book_name author publisher Price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00
178
ภาษาสำหรับจัดการข้อมูล
SELECT publisher, MAX(price) AS mprice FROM book GROUP BY publisher book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 publisher mprice ดอกหญ้า 300.00 U publisher mprice ใบไม้ 100.00
179
ภาษาสำหรับจัดการข้อมูล
SELECT publisher, MAX(price) AS mprice FROM book GROUP BY publisher book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 publisher mprice ดอกหญ้า 300.00 ใบไม้ 100.00
180
ภาษาสำหรับจัดการข้อมูล
SELECT publisher, MAX(price) AS mprice FROM book GROUP BY publisher HAVING MIN(price) > 100 book book_id book_name author publisher price 0004 พระเสาร์แทรก สมหญิง ดอกหญ้า 300.00 0003 ดาวพระศุกร์ พลูโต 220.00 0002 บ้านทรายทอง สมชาย 250.00 0001 คู่กรรม ทมยันตี 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00
181
ภาษาสำหรับจัดการข้อมูล
SELECT publisher, MAX(price) AS mprice FROM book GROUP BY publisher HAVING MIN(price) > 100 book book_id book_name author publisher price 0004 พระเสาร์แทรก สมหญิง ดอกหญ้า 300.00 0003 ดาวพระศุกร์ พลูโต 220.00 0002 บ้านทรายทอง สมชาย 250.00 0001 คู่กรรม ทมยันตี 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 book_name mprice พระเสาร์แทรก 300.00
182
ภาษาสำหรับจัดการข้อมูล
student school student_id student_name school_id B สมชาย 001 B สมศรี 002 B สมโชค B สมศักดิ์ B สมหญิง 003 school_id school_name 001 สารสนเทศ 002 โทรคมนาคม 003 คอมพิวเตอร์
183
Join T⊳⊲T.B=U.BU A B C a 1 X y T A B a 1 b 2 U B C 1 x y 3 z
184
Join T A B a 1 b 2 U B C 1 x y 3 z T⊳⊲U A B C
185
Join T A B a 1 b 2 U B C 1 x y 3 z T⊳⊲U A B C a 1 x
186
Join T A B a 1 b 2 U B C 1 x y 3 z T⊳⊲U A B C a 1 x
187
Join T A B a 1 b 2 U B C 1 x y 3 z T⊳⊲U A B C a 1 x y
188
Join T A B a 1 b 2 U B C 1 x y 3 z T⊳⊲U A B C a 1 x y
189
Join T⊳⊲T.B=U.BU A B C a 1 X y T A B a 1 b 2 U B C 1 x y 3 z
190
Join T⊳⊲T.B=U.DU A B/D C a 1 X y T A B a 1 b 2 U D C 1 x y 3 z
191
Join T⊳⊲T.B=U.DU A B D C a 1 X y T A B a 1 b 2 U D C 1 x y 3 z
192
ภาษาสำหรับจัดการข้อมูล
student school student_id student_name school_id B สมชาย 001 B สมศรี 002 B สมโชค B สมศักดิ์ B สมหญิง 003 school_id school_name 001 สารสนเทศ 002 โทรคมนาคม 003 คอมพิวเตอร์
193
ภาษาสำหรับจัดการข้อมูล
SELECT student_name, school_name FROM student, school WHERE student.school_id = school.school_id student_id student_name school_id B สมชาย 001 B สมศรี 002 B สมโชค B สมศักดิ์ B สมหญิง 003 school_id school_name 001 สารสนเทศ 002 โทรคมนาคม 003 คอมพิวเตอร์ school student
194
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
school SELECT student_name, school_name FROM student, school WHERE student.school_id = school.school_id school_id school_name 001 สารสนเทศ 002 โทรคมนาคม 003 คอมพิวเตอร์ student student_id student_name school_id B สมชาย 001 B สมศรี 002 B สมโชค B สมศักดิ์ B สมหญิง 003 school_id school_name 001 สารสนเทศ 002 โทรคมนาคม 001 สารสนเทศ 001 สารสนเทศ 003 คอมพิวเตอร์
195
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
SELECT student_name, school_name FROM student, school WHERE student.school_id = school.school_id student_id student_name student.school_id school.school_id school_name B สมชาย 001 สารสนเทศ B สมศรี 002 โทรคมนาคม B สมโชค B สมศักดิ์ B สมหญิง 003 คอมพิวเตอร์
196
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
SELECT student_name, school_name FROM student, school WHERE student.school_id = school.school_id student_name school_name สมชาย สารสนเทศ สมศรี โทรคมนาคม สมโชค สมศักดิ์ สมหญิง คอมพิวเตอร์
197
ภาษาสำหรับจัดการข้อมูล
SELECT student.student_name, school.school_name FROM student, school WHERE student.school_id = school.school_id
198
ภาษาสำหรับจัดการข้อมูล
SELECT st.student_name, sc.school_name FROM student AS st, school AS sc WHERE st.school_id = sc.school_id
199
ภาษาสำหรับจัดการข้อมูล
SELECT st.student_name, sc.school_name FROM student st, school sc WHERE st.school_id = sc.school_id
200
ภาษาสำหรับจัดการข้อมูล
book book_id book_name member member_id member_name staff staff_id staff_name
201
ภาษาสำหรับจัดการข้อมูล
member member_id member_name book book_id book_name rental member_id book_id
202
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 rental member_id book_id member member_id name address 0001 Neo Zion 0002 Trinity 0003 Morpheus 0004 Smith Matrix
203
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 rental member_id book_id 0001 0002 member member_id name address 0001 Neo Zion 0002 Trinity 0003 Morpheus 0004 Smith Matrix
204
ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML)
book book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 rental member_id book_id 0001 0002 0008 member member_id name address 0001 Neo Zion 0002 Trinity 0003 Morpheus 0004 Smith Matrix
205
ภาษาสำหรับจัดการข้อมูล
member rental r book member_id name address 0001 Neo Zion 0002 Trinity 0003 Morpheus 0004 Smith Matrix member_id book_id 0001 0002 0008 book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 member_id name address r.member_id r.book_id book_id book_name author publisher price 0001 Neo Zion 0002 บ้านทรายทอง สมชาย ดอกหญ้า 250.00 Trinity 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00
206
ภาษาสำหรับจัดการข้อมูล
SELECT member.name, book.book_name FROM member, rental, book WHERE member.member_id = rental.member_id AND rental.book_id = book.book_id member_id name address r.member_id r.book_id book_id book_name author publisher price 0001 Neo Zion 0002 บ้านทรายทอง สมชาย ดอกหญ้า 250.00 Trinity 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00
207
ภาษาสำหรับจัดการข้อมูล
member rental r book member_id name address 0001 Neo Zion 0002 Trinity 0003 Morpheus 0004 Smith Matrix member_id book_id 0001 0002 0008 book_id book_name author publisher price 0001 คู่กรรม ทมยันตี ดอกหญ้า 250.00 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00 0008 เขาว่าผมฆ่าพี่ห้าง นพดล ใบไม้ 100.00 SELECT member.name, book.book_name FROM member, rental, book WHERE member.member_id = rental.member_id AND rental.book_id = book.book_id
208
ภาษาสำหรับจัดการข้อมูล
SELECT member.name, book.book_name FROM member, rental, book WHERE member.member_id = rental.member_id AND rental.book_id = book.book_id name book_name Neo บ้านทรายทอง Trinity เขาว่าผมฆ่าพี่ห้าง
209
ภาษาสำหรับจัดการข้อมูล
book book_id book_name member member_id member_name staff staff_id staff_name
210
ภาษาสำหรับจัดการข้อมูล
rental member_id book_id staff_id member member_id member_name book book_id book_name staff staff_id staff_name
211
ภาษาสำหรับจัดการข้อมูล
SELECT INSERT DELETE UPDATE
212
ภาษาสำหรับจัดการข้อมูล
INSERT - เพิ่มเรคคอร์ด INSERT [INTO] <ชื่อตาราง> [(รายชื่อคอลัมน์)] VALUES (ข้อมูลตามรายชื่อคอลัมน์) INSERT [INTO] <ชื่อตาราง> VALUES (ข้อมูลทุกคอลัมน์)
213
ภาษาสำหรับจัดการข้อมูล
INSERT - เพิ่มเรคคอร์ด INSERT [INTO] <ชื่อตาราง> [(รายชื่อคอลัมน์)] VALUES (ข้อมูลตามรายชื่อคอลัมน์) INSERT INTO book (book_id, book_name, author, publisher) VALUES (‘0005’, ‘นางทาส’, ‘สมโชค’, ‘ดอกหญ้า’)
214
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book (book_id, book_name, author, publisher) VALUES (‘0005’, ‘นางทาส’, ‘สมโชค’, ‘ดอกหญ้า’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
215
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book VALUES (‘0005’, ‘นางทาส’, ‘สมโชค’, ‘ดอกหญ้า’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
216
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book VALUES (‘0005’, ‘นางทาส’, ‘สมโชค’, ‘ดอกหญ้า’) book book_id book_name author price publisher 0001 คู่กรรม ทมยันตี 250.00 ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 220.00 0004 พระเสาร์แทรก สมหญิง 300.00
217
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book (book_id, book_name, author, publisher) VALUES (‘0005’, ‘นางทาส’, ‘สมโชค’, ‘ดอกหญ้า’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
218
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book (book_name, book_id, author, publisher) VALUES (‘0005’, ‘นางทาส’, ‘สมโชค’, ‘ดอกหญ้า’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
219
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book (book_name, book_id, author, publisher) VALUES (‘นางทาส’, ‘0005’, ‘สมโชค’, ‘ดอกหญ้า’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
220
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book (book_name, book_id, publisher) VALUES (‘นางทาส’, ‘0005’, ‘ดอกหญ้า’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
221
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book (book_name, book_id, author, publisher) VALUES (‘นางทาส’, ‘0005’, ‘สมโชค’, ‘ดอกหญ้า’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค ดอกหญ้า
222
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book (book_name, book_id, author) VALUES (‘นางทาส’, ‘0005’, ‘สมโชค’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง 0005 นางทาส สมโชค NULL
223
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book VALUES (‘นางทาส’, ‘0005’, ‘สมโชค’, ‘ดอกหญ้า’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง นางทาส 005 สมโชค ดอกหญ้า
224
ภาษาสำหรับจัดการข้อมูล
INSERT INTO book (book_name, author) VALUES (‘นางทาส’, ‘สมโชค’) book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง NULL นางทาส สมโชค
225
ภาษาสำหรับจัดการข้อมูล
UPDATE - ปรับปรุงข้อมูล UPDATE <ชื่อตาราง> SET <ชื่อคอลัมน์> = <ข้อมูลใหม่> WHERE <เงื่อนไข>
226
ภาษาสำภาษาสำหรับจัดการข้อมูล หรับจัดการข้อมูล Data Manipulation Language (DML)
UPDATE - ปรับปรุงข้อมูล UPDATE <ชื่อตาราง> SET <ชื่อคอลัมน์> = <ข้อมูลใหม่> WHERE <เงื่อนไข> UPDATE book SET author = ‘สถิตย์โชค’ WHERE book_name = ‘ฐานข้อมูลเลือด’
227
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET author = ‘สถิตย์โชค’ WHERE book_name = ‘ฐานข้อมูลเลือด’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0006 ฐานข้อมูลเลือด พี่โชค มทส
228
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET author = ‘สถิตย์โชค’ WHERE book_name = ‘ฐานข้อมูลเลือด’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0006 ฐานข้อมูลเลือด สถิตย์โชค มทส
229
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET publisher = ‘ใบไม้’ WHERE author = ‘ทมยันตี’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
230
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET publisher = ‘ใบไม้’ WHERE author = ‘ทมยันตี’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ใบไม้ 0002 บ้านทรายทอง สมชาย ดอกหญ้า 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
231
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET publisher = ‘ใบไม้’ WHERE publisher = ‘ดอกหญ้า’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
232
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET publisher = ‘ใบไม้’ WHERE publisher = ‘ดอกหญ้า’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ใบไม้ 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
233
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET publisher = ‘ดอกหญ้า’ WHERE publisher = ‘ใบไม้’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ใบไม้ 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
234
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET publisher = ‘ดอกหญ้า’ WHERE publisher = ‘ใบไม้’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
235
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET author = ‘สมควร’, publisher = ‘ใบไม้’ WHERE book_id = ‘0004’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
236
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET author = ‘สมควร’, publisher = ‘ใบไม้’ WHERE book_id = ‘0004’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
237
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET author = ‘สมควร’, publisher = ‘ใบไม้’ WHERE book_id = ‘0004’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
238
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET author = ‘สมควร’, publisher = ‘ใบไม้’ WHERE book_id = ‘0004’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมหญิง
239
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET author = ‘สมควร’, publisher = ‘ใบไม้’ WHERE book_id = ‘0004’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมควร ใบไม้
240
ภาษาสำหรับจัดการข้อมูล
UPDATE book SET author = ‘สมควร’, publisher = ‘ใบไม้’ WHERE book_id = ‘0004’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมควร ใบไม้
241
ภาษาสำหรับจัดการข้อมูล
DELETE - ลบเรคคอร์ด DELETE FROM <ชื่อตาราง> WHERE <เงื่อนไข>
242
ภาษาสำหรับจัดการข้อมูล
DELETE - ลบเรคคอร์ด DELETE FROM <ชื่อตาราง> WHERE <เงื่อนไข> DELETE FROM book WHERE book_id = ‘0001’
243
ภาษาสำหรับจัดการข้อมูล
DELETE FROM book WHERE book_id = ‘0001’ book book_id book_name author publisher 0001 คู่กรรม ทมยันตี ดอกหญ้า 0002 บ้านทรายทอง สมชาย 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมควร ใบไม้
244
ภาษาสำหรับจัดการข้อมูล
DELETE FROM book WHERE book_id = ‘0001’ book book_id book_name author publisher 0002 บ้านทรายทอง สมชาย ดอกหญ้า 0003 ดาวพระศุกร์ พลูโต 0004 พระเสาร์แทรก สมควร ใบไม้
245
ภาษาสำหรับจัดการข้อมูล
DELETE FROM myheart WHERE friend_name = ‘Boo Boo’ myheart friend_id friend_name address 0001 Boo Boo กทม. 0002 โดเรมอน ญี่ปุ่น 0003 Trinity พลูโต 0004 Cholesterol เส้นเลือด
246
ภาษาสำหรับจัดการข้อมูล
DELETE FROM myheart WHERE friend_name = ‘Boo Boo’ myheart friend_id friend_name address 0001 Boo Boo กทม. 0002 โดเรมอน ญี่ปุ่น 0003 Trinity พลูโต 0004 Cholesterol เส้นเลือด
247
ภาษาสำหรับจัดการข้อมูล
DELETE FROM myheart WHERE friend_name = ‘Boo Boo’ myheart friend_id friend_name address 0001 Boo Boo กทม. 0002 โดเรมอน ญี่ปุ่น 0003 Trinity พลูโต 0004 Cholesterol เส้นเลือด
248
ภาษาสำหรับจัดการข้อมูล
DELETE FROM myheart WHERE friend_name = ‘Boo Boo’ myheart friend_id friend_name address 0002 โดเรมอน ญี่ปุ่น 0003 Trinity พลูโต 0004 Cholesterol เส้นเลือด
249
ภาษาสำหรับจัดการข้อมูล
SELECT INSERT DELETE UPDATE
250
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
251
ภาษาควบคุม Control Language
ควบคุมและรักษาความมั่นคงปลอดภัย Control Security & Safety
252
ภาษาควบคุม GRANT REVOKE ให้สิทธิในการเข้าถึง และกระทำการใดๆ กับข้อมูล
253
ภาษาควบคุม GRANT REVOKE
GRANT <กิจกรรม> ON <ชื่อตาราง> TO <ชื่อ User> REVOKE <กิจกรรม> ON <ชื่อตาราง> FROM <ชื่อ User> <กิจกรรม>: SELECT/INSERT/UPDATE/DELETE
254
ภาษาควบคุม GRANT GRANT <กิจกรรม> ON <ชื่อตาราง> TO <ชื่อ User> GRANT SELECT ON book TO user01 GRANT INSERT ON book TO user01 GRANT INSERT, UPDATE, DELETE ON book TO user01
255
ภาษาควบคุม GRANT REVOKE <กิจกรรม> ON <ชื่อตาราง> FROM <ชื่อ User> REVOKE SELECT ON book FROM user01 REVOKE INSERT ON book FROM user01 REVOKE INSERT, UPDATE, DELETE ON book FROM user01
256
ภาษาควบคุม GRANT/REVOKE Demo
257
ภาษาควบคุม GRANT/REVOKE Demo Create User Confirm Authentication Method
Login GRANT REVOKE
258
ภาษาควบคุม SQL วิวัฒนาการของ SQL
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
259
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
260
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
S-Q-L (See-Quel) Structured Query Language สำหรับใช้กับ Relational Database อยู่ในรูปแบบของภาษาอังกฤษ SQL วิวัฒนาการของ SQL ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
261
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
IBM SEQUEL SEQUEL/2 – System R (DB/2) ANSI, ISO SQL-92 (SQL2), SQL3 SQL วิวัฒนาการของ SQL ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
262
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
CREATE, ALTER, DROP CREATE/DROP INDEX CREATE/DROP VIEW Data Type SQL วิวัฒนาการของ SQL ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
263
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
SELECT INSERT UPDATE DELETE SQL วิวัฒนาการของ SQL ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
264
หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
GRANT REVOKE Demo User Management SQL วิวัฒนาการของ SQL ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
265
? SQL หัวข้อบรรยาย SQL วิวัฒนาการของ SQL
ภาษาที่ใช้สำหรับนิยามข้อมูล Data Definition Language (DDL) ภาษาสำหรับจัดการข้อมูล Data Manipulation Language (DML) ภาษาควบคุม Control Language
266
เอกสารประกอบการบรรยายรายวิชา 204204 การออกแบบและพัฒนาฐานข้อมูล
บทที่ 9 SQL เอกสารประกอบการบรรยายรายวิชา การออกแบบและพัฒนาฐานข้อมูล
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.