1. Trang chủ
  2. » Giáo Dục - Đào Tạo

SQL Structured Query Language, 2016

73 632 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 73
Dung lượng 1,89 MB

Nội dung

Structured Query Language Le Thi Lan 09/11/16 Giới thiệu SQL Lịch sử – Ngôn ngữ Sequel dự án System-R – 1986: Chuẩn SQL đời có tên gọi SQL-86 – chuẩn khác đời sau SQL-89 SQL-92, SQL-99 Chú ý: • Kiểm tra dạng chuẩn sử dụng hệ QT CSDL • SQL: – Không phân biệt chữ hoa chữ thường – Một số hệ cần dấu chấm phẩy sau câu lệnh • Tham khảo: – www.learn-sql-tutorial.com – www.w3schools.com/SQL/sql_syntax asp Giới thiệu SQL Các thành phần – Ngôn ngữ định nghĩa liệu (DDL) – CREATE TABLE – ALTER TABLE … – Ngôn ngữ thao tác liệu (DML) – SELECT – UPDATE – DELETE – Điều khiển giao dịch Định nghĩa liệu – Sơ đồ bảng – Kiểu liệu hay miền giá trị – Các ràng buộc toàn vẹn – Tập dẫn – Thơng tin an tồn ủy quyền bảng – Cấu trúc lưu trữ vật lý Định nghĩa liệu- Kiểu liệu – Char(n) – Varchar (n) : Độ dài thay đổi – Int or Integer (từ -2,147,483,648 đến 2,147,483,647) – Smallint (từ -32,768 đến 32,767) – Numeric (p,s) – Real, double precision – Float (n) – Date: YYYY-MM-DD – Time: HH:MM.SS.MMMM Định nghĩa liệu- Tạo bảng CREATE TABLE ( [NOT NULL], [CONSTRAINT …]) Định nghĩa liệu- Tạo bảng Định nghĩa liệu- Tạo bảng Định nghĩa liệu- Thêm - Xóa cột Nhân bảng field1 A B field2 field1 A A A B B B field2 3 Nhân bảng Bảng Music field id type type numeric character width contents student id number 10 type of the music instrument Kết nối tự nhiên Kết nối tự nhiên (Natural Join ) thao tác kết nối bảng cột chung SELECT a.comcol, a.col1, b.col2, expr1, expr2 FROM table1 a, table2 b WHERE a.comcol = b.comcol Kết nối tự nhiên Xác định số sinh viên học piano lớp id name class id Same id 9801 Join Student id name class 9801 Product type 9801 Music type Kết nối tự nhiên Xác định danh sách sinh viên nhạc cụ sinh viên học SELECT s.class, s.name, s.id, m.type FROM student s, music m WHERE s.id=m.id ORDER BY class, name Kết class 1A 1A 1A 1A 1A 1A 1A : name Aaron Bobby Gigi Jill Johnny Luke Mary : id 9812 9811 9824 9820 9803 9810 9802 : type Piano Flute Recorder Piano Violin Piano Flute : Kết nối tự nhiên Xác định số sinh viên học piano lớp phần: (1) Kết nối tự nhiên (2) Điều kiện: m.type=‘Piano’ (3) Nhóm theo lớp Kết nối tự nhiên Student Join Điều kiện m.type= "Piano" Kết Music Nhóm theo lớp Kết nối tự nhiên Xác định số sinh viên học piano lớp SELECT s.class, COUNT(*) FROM student s, music m WHERE s.id=m.id AND m.type=‘Piano’ GROUP BY class ORDER BY class Kết class 1A 1B 1C cnt Kết nối Kết nối (Outer Join) thao tác kết nối Kết bao gồm hàng có kết nối + hàng khơng có kết nối bảng khác Kết nối Xác định danh sách sinh viên chưa lựa chọn nhạc cụ id name class id type 9801 Student Music Kết nối Xác định danh sách sinh viên chưa lựa chọn nhạc cụ SELECT class, name, id FROM student WHERE id NOT IN ( SELECT id FROM music ) ORDER BY class, name Kết class 1A 1B 1B 1C 1C : name Mandy Kenny Tobe Edmond George : id 9821 9814 9805 9818 9817 : Kết nối Tạo danh sách sinh viên với danh sách nhạc cụ sinh viên học Danh sách phải bao gồm sinh viên đăng ký nhạc cụ Kết nối Kết nối tự nhiên Kết nối Kết nối SELECT s.class, s.name, s.id, m.type FROM student s, music m WHERE s.id=m.id UNION SELECT class, name, id, "" FROM student WHERE id NOT IN ( SELECT id FROM music ) ORDER BY 1, class 1A 1A 1A 1A 1A 1A 1A : Kết nối name Aaron Bobby Gigi Jill Johnny Luke Mary : id 9812 9811 9824 9820 9803 9810 9802 : type Piano Flute Recorder Piano Violin Piano Flute : Kết nối tự nhiên class 1A 1B 1B 1C 1C : name Mandy Kenny Tobe Edmond George : id 9821 9814 9805 9818 9817 : class 1A 1A 1A 1A 1A 1A 1A 1A 1A 1A 1B 1B 1B 1B : name Aaron Bobby Gigi Jill Johnny Luke Mandy Mary Peter Ron Eddy Janet Kenny Kitty : id 9812 9811 9824 9820 9803 9810 9821 9802 9801 9813 9815 9822 9814 9806 : type Piano Flute Recorder Piano Violin Piano Flute Piano Guitar Piano Guitar Recorder : Kết nối Rỗng

Ngày đăng: 11/09/2016, 11:13

TỪ KHÓA LIÊN QUAN

w