Chương 5 ngôn ngữ truy vấn SQL docx

32 535 2
Chương 5 ngôn ngữ truy vấn SQL docx

Đ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

Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 1 11 1 Chơng 5 ngôn ngữ truy vấn sql i. Tổng quan 1. Lịch sử phát triển Vào những năm 1970, SQL lần đầu đợc hãng IBM phát triển nh một bộ phận của hệ quản trị CSDL mô hình quan hệ có tên là SYSTEM R. Sau đó vào các năm 1980 IBM tiếp tục phát triển SQL cho các hệ quản trị cơ sở dữ liệu nổi tiếng là SQL/DS trên nền hệ điều hành VM, DB2 trên nền hệ điều hành MVS, Hệ quản trị cơ sở dữ liệu mở rộng trên nền hệ điều hành IBM OS/2, Hệ quản trị cơ sở dữ liệu cho hệ thống IBM AS/400. Năm 1986, Viện tiêu chuẩn quốc gia Hoa kỳ (ANSI American National Standards Institute) và Tổ chức Tiêu chuẩn Quốc tế (ISO International Standards Organization) đã thừa nhận SQL nh là ngôn ngữ chuẩn xử lý dữ liệu. Ngôn ngữ chuẩn ANSI SQL tiếp tục đợc cập nhật vào những năm 1989 và 1992 sau đó. Hiện nay một phiên bản mới SQL3 đang đợc phát triển. SQL đợc cài đặt cho hệ thống máy tính lớn (mainframe) cũng nh máy tính cá nhân. Bên cạnh các sản phẩm của hãng IBM, cũng cần phải kể đến các hệ quản trị cơ sở dữ liệu nổi tiếng khác nh ORACLE của Công ty Oracle, SQL Server của hãng Microsoft, SQLBase của hãng Sybase, Ingres của hãng Relational Technologies, 2. SQL là ngôn ngữ chuẩn cho các hệ quản trị cơ sở dữ liệu quan hệ Hệ quản trị cơ sở dữ liệu quan hệ là hệ quản trị cơ sở dữ liệu xử lý dữ liệu dạng tập hợp các bảng quan hệ, trong đó sự quan hệ gia các bảng đợc biểu diễn bằng các giá trị chung trong các bảng liên quan. Để định hớng phát triển các hệ quản trị cơ sở dữ liệu quan hệ, ANSI và ISO đã phê chuẩn ngôn ngữ truy vấn quan hệ chuẩn SQL đợc Uỷ ban Kỹ thuật cơ sở dữ liệu X3H2 đa ra năm 1986. Mục đích của chuẩn SQL là 1. Xác định cú pháp và ngữ nghĩa của ngôn ngữ SQL định nghĩa và thao tác dữ liệu 2. Định nghĩa các cấu trúc dữ liệu và phép toán cơ bản để thiết kế, truy cập, lu trữ, kiểm soát và bảo vệ cơ sở dữ liệu SQL 3. Cung cấp công cụ đảm bảo tính tơng thích của cấu trúc dữ liệu và các modul ứng dụng giữa các hệ quản trị cơ sở dữ liệu 4. Xác định chuẩn tối thiểu (Mức 1) và chuẩn hoàn chỉnh (Mức 2), cho phép các cấp độ sử dụng SQL khác nhau trong các sản phẩm 5. Cung cấp chuẩn ban đầu, có thể cha hoàn chỉnh, cho phép mở rộng các chức năng xử lý những vấn đề nh sự toàn vẹn tham chiếu, giao thức Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 2 22 2 chuyển đổi, các hàm ngời dùng, các toán tử nối ngoài phép đẳng nối, và các hệ thống ký tự quốc gia, Một ngôn ngữ quan hệ chuẩn nh SQL sẽ mang lại các lợi ích sau đây: Giảm thiểu chi phí đào tạo. Các hệ quản trị cơ sở dữ liệu có chung ngôn ngữ chuẩn SQL sẽ làm giảm chi phí chuyển đổi từ hệ này sang hệ khác. Nâng cao hiệu năng công việc. Các chuyên gia hệ thống thông tin với kiến thức sâu sắc về SQL sẽ nhanh chóng nắm bắt các chơng trình ứng dụng của các hệ quản trị cơ sở dữ liệu, vì họ đã quen thuộc với ngôn ngữ của các chơng trình này. Tính khả chuyển của các ứng dụng. Các ứng dụng có thể dễ dàng sử dụng trên các hệ thống khác nhau, nhng cùng sử dụng SQL. Tăng tuổi thọ của các ứng dụng. Một ngôn ngữ chuẩn có xu hớng tồn tại thời gian dài, điều đó làm giảm áp lực viết lại chơng trình. Làm giảm sự phụ thuộc vào nhà cung cấp. Vì SQL là ngôn ngữ chung nên ngời dùng dễ dàng sử dụng nhiều sản phẩm của các nhà cung ứng khác nhau, với giá cả cạnh tranh. Khả năng giao tiếp giữa các hệ thống chéo. các hệ quản trị cơ sở dữ liệu quan hệ và các chơng trình ứng dụng khác nhau có thể dễ dàng giao tiếp và hợp tác để xử lý dữ liệu và thực hiện chơng trình ngời dùng. SQL là ngôn ngữ có cấu trúc. Trong câu lệnh của SQL có một số mệnh đề tuân theo những cú pháp riêng của nó. Có 4 loại lệnh trong SQL: - Các lệnh truy vấn dữ liệu (DML); - Các lệnh định nghĩa dữ liệu (DDL); - Các lệnh xử lý cập nhật dữ liệu (DML); - Các lệnh kiểm soát dữ liệu. SQL thuộc loại ngôn ngữ thế hệ thứ t (4GL) đợc nghiên cứu nhiều năm và trở thành tiêu chuẩn quốc tế về kiểm soát dữ liệu. SQL kế thừa tính phi thủ tục của 4GL : Xử lý đồng thời hàng loạt câu lệnh. Ngời dùng chỉ cần nêu ra yêu cầu về dữ liệu mà không cần biết máy tính xử lý bên trong nh thế nào. Ngời dùng có thể truy xuất nhanh chóng với những CSDL lớn, yêu cầu những xử lý phức tạp tinh vi mà không cần lập trình. Sau đây chúng ta sẽ tìm hiểu các thành phần cơ bản của SQL. Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 3 33 3 3. Các thành phần cơ bản của SQL a. Kiểu dữ liệu SQL có các kiểu dữ liệu sau INTEGER : Kiểu số nguyên 2 byte -2 147 483 648 2 147 483 647 SMALLINT : Kiểu số nguyên 1 byte - 32 768 32 767 DECIMAL(n,d): Kiểu số thực độ dài n (kể cả dấu), số chữ số thập phân d FLOAT : Kiểu số thực khoa học CHAR(n) : Kiểu chuỗi ký tự độ dài n DATE : Kiểu ngày tháng (ngày/tháng/năm) LOGICAL : Kiểu lôgic, nhận giá trị true hoặc false VARCHAR(n) : Kiểu chuỗi ký tự độ dài thay đổi, tối đa n ký tự LONGVARCHAR : Kiểu chuỗi ký tự độ dài thay đổi (chứa dữ liệu nh ghi chú, ) Chuẩn SQL92 bổ sung các kiểu dữ liệu nh thời gian, bit, khoảng, tập ký tự (character set). Ngoài ra một số phần mềm thơng mại SQL còn có nhiều kiểu dữ liệu chuyên biệt khác nh : Kiểu tiền tệ Kiểu văn bản Kiểu hình ảnh Kiểu âm thanh Các kiểu dữ liệu, ngoài miền giá trị của mình, có thể nhận giá trị đặc biệt null. giá trị NULL Giá trị NULL nghĩa là không xác định, cha sử dụng đợc . Trờng khoá không thể chấp nhận giá trị NULL. Tất cả các phép toán, ngoại trừ phép toán lô-gic, chứa thành phần có giá trị NULL đều cho kết quả NULL. b. Các toán tử Cũng nh phần lớn các ngôn ngữ khác, SQL sử dụng các loại toán tử sau. Toán tử số học + cộng trừ * nhân / chia Toán tử so sánh > Lớn hơn >= Lớn hơn hoặc bằng = Bằng < Nhỏ hơn Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 4 44 4 <= Nhỏ hơn hoặc bằng <> Khác Toán tử logic OR Hoặc AND Và NOT Phủ định Toán tử tập hợp UNION Hợp INTERSECT Giao MINUS Hiệu c. Hàm tính toán COUNT( ) Đếm số bản ghi. SUM( ) Tính tổng biểu thức số. AVG( ) Tính trị trung bình biểu thức số. MAX( ) Tìm trị lớn nhất. MIN( ) Tìm trị nhỏ nhất. d. Hàm tập hợp SET( ) Tập hợp các phần tử. Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 5 55 5 4. Các quy ớc biểu diễn câu lệnh SQL Câu lệnh đợc cấu thành từ các thành phần: từ khoá, thành phần bắt buộc, thành phần không bắt buộc, thành phần lựa chọn. Từ khoá là từ dành riêng, có ý nghĩa nhất định trong ngôn ngữ, bắt buộc phải có trong câu lệnh. Không đợc dùng từ khoá cho mục đích khác, chẳng hạn nh đặt tên cho trờng hay bảng. Ví dụ: Trong lệnh CREATE TABLE từ CREATE và TABLE là từ khoá. Thành phần bắt buộc là biểu thức bắt buộc phải có trong câu lệnh, thành phần bắt buộc đợc đặt trong dấu ngoặc nhọn < >. Ví dụ: Trong lệnh CREATE TABLE <bảng> thành phần bảng là bắt buộc. Thành phần không bắt buộc là biểu thức không bắt buộc phải có trong câu lệnh, thành phần không bắt buộc đợc đặt trong dấu ngoặc vuông [ ]. Ví dụ: Trong lệnh CREATE TABLE <bảng> <thuộc tính> <kiểu> [(<kích thớc>)] [NOT NULL], thành phần (<kích thớc>), NOT NULL là không bắt buộc. Thành phần lựa chọn là các thành phần phân cách bởi dấu : TP1 TP2 TPn Khi đó, nếu đợc chọn, thì chỉ một trong các thành phần trên đợc xuất hiện trong câu lệnh. Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 6 66 6 ii. Ngôn ngữ định nghĩa dữ liệu Cơ sở dữ liệu (CSDL) là mô hình thực thể phản ánh thế giới thực đợc đề cập đến, do đó nó là sự trìu tợng hoá thế giới thực. Cụ thể hơn, CSDL là kho dữ liệu có tổ chức để đáp ứng mục tiêu kỹ thuật hay quản lý. Với ý nghĩa đó, CSDL chính là trái tim của hệ thống thông tin quản lý, là nguồn dữ liệu cho mọi hệ thông tin dựa trên máy tính. Dữ liệu trong CSDL phải đợc tổ chức chặt chẽ khoa học sao cho có thể truy cập, cập nhật dễ dàng và xử lý tổng hợp thống kê nhanh chóng. Về bản chất CSDL là tập hợp các file dữ liệu (table) có quan hệ logic với nhau đảm bảo giảm thiểu sự d thừa (chuẩn hoá) và thống nhất dữ liệu (toàn vẹn dữ liệu). 1. Các lệnh về bảng (table) a. Khởi tạo cấu trúc bảng Cú pháp CREATE TABLE <Bảng> (<thuộc tính 1> <kiểu dữ liệu> [NOT NULL] [DEFAULT <giá trị>], <thuộc tính 2> <kiểu dữ liệu> [NOT NULL] [DEFAULT <giá trị>], <thuộc tính n> <kiểu dữ liệu> [NOT NULL] [DEFAULT <giá trị>] ) Công dụng Tạo lợc đồ quan hệ tên <Bảng> có các thuộc tính <thuộc tính 1>, <thuộc tính 2>, cùng kiểu dữ liệu tơng ứng. Tham số NOT NULL dùng để chỉ rằng thuộc tính tơng ứng không đợc phép nhận giá trị NULL. Tham số DEFAULT <giá trị> dùng để gán giá trị ngầm định mỗi khi thêm bản ghi mới vào bảng. Ví dụ - Tạo cấu trúc bảng PHONG: CREATE TABLE PHONG (MaPhong CHAR(3) NOT NULL, TenPhong CHAR(20)) - Tạo cấu trúc bảng NHANVIEN : CREATE TABLE NHANVIEN (Manv CHAR(4) NOT NULL, Tennv CHAR(20) DEFAULT Nguyễn Văn , GioiTinh CHAR(1) , DiaChi CHAR(30) DEFAULT Đà nẵng , HSLuong DECIMAL(5,2), MaPhong CHAR(3) NOT NULL ) Ghi chú: GioiTinh = '+' là nam, ' ' là nữ. Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 7 77 7 b. Các chức năng tăng cờng sự toàn vẹn CSDL (Integrity Enhancement Feature) Thiết lập ràng buộc đơn thuộc tính: CREATE TABLE <bảng> ( , <thuộc tính> <kiểu dữ liệu> CONSTRAINT <tên ràng buộc> <CHECK <điều kiện> UNIQUE PRIMARY KEY REFERENCES <Bảng ngoại> [(<thuộc tính ngoại>)] [ON DELETE SET <NULLDEFAULT <giá trị> >] [ON UPDATE SET CASCADE]>, ) Ràng buộc <tên ràng buộc> đợc khai báo cùng với thuộc tính. Các ràng buộc tuỳ chọn có ý nghĩa nh sau: - CHECK <điều kiện> : Kiểm tra <điều kiện> ràng buộc của thuộc tính. - UNIQUE : Thuộc tính khoá, có giá trị duy nhất. - PRIMARY KEY : Thuộc tính khoá chính, có giá trị duy nhất. - REFERENCES : Thuộc tính tham chiếu đến <bảng ngoại>. Nếu thuộc tính đợc tham chiếu khác tên thì phải khai báo thành phần < thuộc tính ngoại>. ON DELETE SET <NULLDEFAULT <giá trị>>: Trờng hợp hàng đợc tham chiếu trong <bảng ngoại> bị xoá thì giá trị thuộc tính đợc gán NULL hoặc giá trị mặc định khai báo sau DEFAULT. ON UPDATE SET CASCADE : Trờng hợp <thuộc tính ngoại> của hàng đợc tham chiếu trong <bảng ngoại> bị sửa thì giá trị thuộc tính đợc cập nhật theo. Thiết lập ràng buộc đa thuộc tính CREATE TABLE <bảng> ( , <thuộc tính cuối> <kiểu dữ liệu>, CONSTRAINT <tên ràng buộc> <CHECK <điều kiện> UNIQUE (<ds trờng khoá>) PRIMARY KEY (<ds trờng khoá chính>) FOREIGN KEY (<ds trờng tham chiếu>) REFERENCES <Bảng ngoại> [(<ds trờng ngoại>)] [ON DELETE SET <NULLDEFAULT <giá trị> >] [ON UPDATE SET CASCADE]> ) Ràng buộc <tên ràng buộc> đợc khai báo độc lập, sau thuộc tính cuối cùng. Các ràng buộc tuỳ chọn có ý nghĩa nh sau: - CHECK <điều kiện> : Kiểm tra <điều kiện> ràng buộc liên thuộc tính. Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 8 88 8 - UNIQUE : Danh sách trờng khoá, có giá trị duy nhất. - PRIMARY : Danh sách trờng khoá chính, có giá trị duy nhất. - FOREIGN KEY (<ds trờng tham chiếu>) REFERENCES : Danh sách trờng tham chiếu đến <bảng ngoại>. Nếu các trờng đợc tham chiếu có tên khác thì phải khai báo thành phần <ds trờng ngoại>. Thành phần ON DELETE và ON UPDATE có công dụng nh ở lệnh trớc. Thiết lập ràng buộc liên bộ CREATE ASSERTION <tên ràng buộc> CHECK (<điều kiện ràng buộc liên bộ>) Thiết lập ràng buộc toàn cục (assertion) <tên ràng buộc>. Ví dụ - Tạo cấu trúc bảng PHONG: CREATE TABLE PHONG (MaPhong CHAR(3) CONSTRAINT kcphong PRIMARY KEY, TenPhong CHAR(20)) - Tạo cấu trúc bảng NHANVIEN : CREATE TABLE NHANVIEN (Manv CHAR(4) CONSTRAINT kcnhanvien PRIMARY KEY, Tennv CHAR(20) DEFAULT Nguyễn Văn , GioiTinh CHAR(1) CONSTRAINT gtgioitinh CHECK (GioiTinh IN (+,,'0')), NgaySinh DATE, NgayLV DATE, CMND CHAR(12) CONSTRAINT kcmnd UNIQUE, DiaChi CHAR(30), HSLuong DECIMAL(5,2) CONSTRAINT gthsluong CHECK (HSLuong >=1 AND HSLuong <= 10), MaPhong CHAR(3) NOT NULL CONSTRAINT tcmaphong REFERENCES PHONG, CONSTRAINT rbNgay CHECK (NgaySinh < NgayLV)) - Tạo ràng buộc liên bộ tổng lơng không vợt quá 1 000 000 000: CREATE ASSERTION tongluong CHECK (SELECT SUM(HSLuong*730000) FROM NHANVIEN <= 1 000 000 000) Ví dụ: Tạo lợc đồ cơ sở dữ liệu quan hệ Khách-Hàng. - Tạo cấu trúc bảng KHACH(Ten, DiaChi, SoDu), trong đó khóa chính là số d: CREATE TABLE KHACH (Ten CHAR(20) CONSTRAINT kckhach PRIMARY KEY, DiaChi CHAR(20), SoDu DECIMAL(10,0)) Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 9 99 9 - Tạo cấu trúc bảng HOPDONG(Sohd, TenKh, Hang, SoLuong): CREATE TABLE HOPDONG (Sohd CHAR(4) CONSTRAINT kchopdong PRIMARY KEY, TenKh CHAR(20) CONSTRAINT tcten REFERENCES KHACH(Ten), Hang CHAR(20), SoLuong DECIMAL(8,0) CONSTRAINT gtsoluong CHECK (SoLuong>0)) - Tạo cấu trúc bảng CUNGUNG(Ten, DiaChi, Hang, DonGia): CREATE TABLE CUNGUNG (Ten CHAR(20), DiaChi CHAR(20), Hang CHAR(20), DonGia DECIMAL(8,0) CONSTRAINT gtdongia CHECK (DonGia > 0), CONSTRAINT kccungung PRIMARY KEY (Ten, Hang)) c. Hiệu chỉnh cấu trúc dữ liệu Thêm thuộc tính mới ALTER TABLE < Bảng> ADD [COLUMN] <thuộc tính mới><Kiểu dữ liệu>[NOT NULL][INIT = <giá trị>] [CONSTRAINT ] Xoá thuộc tính ALTER TABLE < Bảng> DROP [COLUMN] < thuộc tính > Thay đổi tính chất thuộc tính ALTER TABLE < Bảng> CHANGE COLUMN < thuộc tính > [<Kiểu dữ liệu>] [CONSTRAINT ] Ghi chú. Trong ORACLE: CHANGE thay bằng MODIFY; trong VISUAL FOXPRO: CHANGE thay bằng ALTER. Thay đổi tên thuộc tính ALTER TABLE < Bảng> RENAME COLUMN < thuộc tính cũ> TO <thuộc tính mới> Thêm ràng buộc đa thuộc tính Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 10 1010 10 ALTER TABLE < Bảng> ADD CONSTRAINT <ràng buộc mới> Xoá ràng buộc ALTER TABLE < Bảng> DROP CONSTRAINT <ràng buộc> Ví dụ - Thêm thuộc tính NoiSinh vào bảng NHANVIEN và gán giá trị Đà nẵng : ALTER TABLE NHANVIEN ADD COLUMN NoiSinh CHAR(30) INIT = Đà nẵng - Xoá thuộc tính DiaChi khỏi bảng NHANVIEN : ALTER TABLE NHANVIEN DROP COLUMN DiaChi - Thay đổi kích thớc của thuộc tính Tennv : ALTER TABLE NHANVIEN CHANGE COLUMN Tennv CHAR(30) - Đổi tên thuộc tính Tennv thành HoTen: ALTER TABLE NHANVIEN RENAME COLUMN Tennv TO HoTen - Xóa ràng buộc : ALTER TABLE NHANVIEN DROP CONSTRAINT kcnhanvien ALTER TABLE NHANVIEN DROP CONSTRAINT kcmnd - Thêm ràng buộc: ALTER TABLE NHANVIEN ADD CONSTRAINT kcnhanvien PRIMARY KEY (CMND) ALTER TABLE NHANVIEN ADD CONSTRAINT kmanv UNIQUE (manv) d. Xoá bảng Cú pháp : DROP TABLE <bảng> Công dụng: Xoá bỏ bảng <bảng> Ví dụ - Huỷ bảng NHANVIEN : DROP TABLE NHANVIEN - Huỷ bảng PHONG : [...]... VIEW AS Xoá khung nhìn: DROP VIEW Ví dụ: - Tạo khung nhìn NVNU từ bảng NHANVIEN CREATE VIEW NVNU AS SELECT Manv, Holot, Ten, NgaySinh FROM NHANVIEN WHERE GioiTinh = - Chơng 5 Ngôn ngữ truy vấn SQL 5 28 Trần Quốc Chiến Cơ sở dữ liệu - Xoá khung nhìn DROP VIEW NVNU Chơng 5 Ngôn ngữ truy vấn SQL 5 29 Trần Quốc Chiến Cơ sở dữ liệu v Ngôn ngữ kiểm soát dữ liệu 1... Chơng 5 Ngôn ngữ truy vấn SQL 5 30 Trần Quốc Chiến Cơ sở dữ liệu Công dụng: Tớc bỏ sử dụng của Ví dụ: Huỷ quyền SELECT, INSERT bảng CUNGUNG của ngời dùng Minh: REVOKE SELECT, INSERT ON CUNGUNG FROM Minh Chơng 5 Ngôn ngữ truy vấn SQL 5 31 Trần Quốc Chiến Cơ sở dữ liệu bài tập 5. 01 Trình bày a) Các kiểu dữ liệu của SQL b) Các toán tử lôgic của SQL. .. Ví dụ Cty Công nghệ phẩm ngng bán cà phê : DELETE FROM CUNGUNG WHERE (Ten = 'Cty Công nghệ phẩm') AND (Hang = 'Cà phê') Chơng 5 Ngôn ngữ truy vấn SQL 5 14 Trần Quốc Chiến Cơ sở dữ liệu iv Ngôn ngữ truy vấn dữ liệu 1 Phép toán cơ bản của SQL là mệnh đề truy vấn có điều kiện Cú pháp tổng quát SELECT [DISTINCT] [AS ] [, ] | * FROM [] [, ] [INTO ]... các cột Masv, HoTen e) Viết câu truy vấn tổng hợp số lợng sinh viên theo ngành gồm các cột Nganh, SoSV f) Viết câu truy vấn tổng hợp điểm trung bình chung của sinh viên gồm các cột Masv, HoTen, DiemTB g) Viết câu truy vấn liệt kê những giáo viên dạy 2 môn có mã là CTDL (Cấu trúc dữ liệu) và CSDL (Cơ sở dữ liệu) gồm các cột Magv, HoTen, DiaChi Chơng 5 Ngôn ngữ truy vấn SQL 5 32 ... 1>] SELECT ( / * ) FROM [WHERE ] Chơng 5 Ngôn ngữ truy vấn SQL 5 26 Trần Quốc Chiến Cơ sở dữ liệu Công dụng: SQL thực hiện câu truy vấn SELECT FROM và chèn bảng kết quả vào Các cột trong sẽ đợc gán tơng ứng cho các cột trong Trong câu truy vấn SELECT không sử dụng ORDERED BY , Không sử dụng các toán tử tập hợp, không... điều kiện giá trị là [khác] NULL - Điều kiện tồn tại : EXISTS (tồn tại), NOT EXISTS (không tồn tại) Chơng 5 Ngôn ngữ truy vấn SQL 5 15 Trần Quốc Chiến Cơ sở dữ liệu - Câu vấn tin con kiểu SELECT FROM WHERE + GROUP BY : Tổng hợp dữ liệu + ORDER BY : Sắp xếp dữ liệu 2 Truy vấn giản đơn Cú pháp SELECT [DISTINCT] [AS ] [, ] | * FROM Công dụng Tạo bảng kết quả... cung ứng sắp xếp theo thứ tự Ten và Hang : SELECT * FROM CUNGUNG ORDER BY Ten, Hang 5 Truy vấn kết nối nhiều bảng Cú pháp SELECT [DISTINCT] [AS ] [, ] | * FROM [], [] [, ] WHERE [AND | OR ] Công dụng Chơng 5 Ngôn ngữ truy vấn SQL 5 18 Trần Quốc Chiến Cơ sở dữ liệu Tạo bảng kết quả gồm các thuộc tính liệt kê... các điều kiện chứa quan hệ tập hợp và số liệu tổng hợp Trong quan hệ tập hợp, câu truy vấn con đặt trong ngoặc đơn a Sử dụng các toán tử so sánh : =, Ví dụ - Liệt kê tên các khách hàng có số d lớn nhất: SELECT Ten FROM KHACH WHERE Sodu = (SELECT MAX(Sodu) FROM KHACH) Chơng 5 Ngôn ngữ truy vấn SQL 5 22 Trần Quốc Chiến Cơ sở dữ liệu - Liệt kê tên các hãng cung ứng gạo có DonGia... SELECT Mặt hàng, Hang, có đơn giá là, DonGia FROM CUNGUNG 3 Truy vấn có điều kiện Cú pháp SELECT [DISTINCT] [AS ] [, ] | * FROM WHERE Công dụng Tạo bảng kết quả gồm các cột liệt kê sau SELECT hoặc tất cả các cột lấy từ gồm các bộ thoả mãn Chơng 5 Ngôn ngữ truy vấn SQL 5 16 Trần Quốc Chiến Cơ sở dữ liệu Ví dụ - Tạo bảng kết quả... Chơng 5 Ngôn ngữ truy vấn SQL 5 27 Trần Quốc Chiến Cơ sở dữ liệu GROUP BY x.Tkno, x.Tkco b Hiệu chỉnh bản ghi Các mặt hàng không có trong hợp đồng giảm 50 % giá: UPDATE CUNGUNG SET DonGia = DonGia / 2 WHERE Hang NOT IN (SELECT DISTINCT Hang FROM HOPDONG) c Xóa bản ghi Xoá các hợp đồng mà khách hàng có số d âm : DELETE FROM HOPDONG WHERE Tenkh IN (SELECT Ten FROM KHACH WHERE SoDu < 0 ) 11 Sử dụng câu truy . Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 15 151 5 15 iv. Ngôn ngữ truy vấn dữ liệu 1. Phép toán cơ bản của SQL là mệnh đề truy vấn có điều kiện Cú pháp tổng. Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 1 11 1 Chơng 5 ngôn ngữ truy vấn sql i. Tổng quan 1. Lịch sử phát triển Vào những năm 1970, SQL lần đầu đợc hãng IBM. các phần tử. Trần Quốc Chiến Cơ sở dữ liệu Chơng 5. Ngôn ngữ truy vấn SQL 5 5 5 5 5 55 5 4. Các quy ớc biểu diễn câu lệnh SQL Câu lệnh đợc cấu thành từ các thành phần: từ khoá,

Ngày đăng: 14/08/2014, 09:20

Trích đoạn

Tài liệu cùng người dùng

Tài liệu liên quan