H c SQL căn b n đây (p1) !
Mình th y trên các di n đàn r t ít v Mysql . Vì th này m o m i s u t m và b sung cho nh ng ai ch a ế ư ư
bi t chút gì v Mysql . R t mong các b n ng h ! ế Đăng b i: admin S l n xem: 548
SQL là chu n ngôn ng ANSI đ truy c p CSDL.
SQL là gì?
SQL là vi t t t c a ế Structured Query Language - Ngôn ng truy v n c u trúc.
SQL cho phép b n truy c p vào CSDL.
SQL là m t chu n ngôn ng c a ANSI.
SQL có th th c thi các câu truy v n trên CSDL.
SQL có th l y d li u t CSDL.
SQL có th chèn d li u m i vào CSDL.
SQL có th xoá d li u trong CSDL.
SQL có th s a đ i d li u hi n có trong CSDL.
SQL d h c :-)
SQL là m t chu n
SQL là m t chu n c a ANSI ( American National Standards Institute - Vi n tiêu chu n qu c gia Hoa kỳ) v
truy xu t các h th ng CSDL. Các câu l nh SQL đ c s d ng đ truy xu t và c p nh t d li u trong m t ượ
CSDL.
SQL ho t đ ng v i h u h t các ch ng trình CSDL nh ế ươ ư MS Access, DB2, Informix, MS SQL Server,
Oracle, Sybase v.v...
L u ý:ư H u h t các ch ng trình CSDL h tr SQL đ u có ph n m r ng cho SQL ch ho t đ ng v i chính ế ươ
ch ng trình đó.ươ
B ng CSDL
M t CSDL th ng bao g m m t ho c nhi u b ng (table). M i b ng đ c xác đ nh thông qua m t tên (ví d ườ ượ
Customers ho c Orders). B ng ch a các m u tin - dòng (record - row), là d li u c a b ng.
D i đây là m t ví d v m t b ng có tên là ướ Persons (ng i):ườ
LastName FirstName Address City
Hansen Ola Timoteivn 10 Sandnes
Svendson Tove Borgvn 23 Sandnes
Pettersen Kari Storgt 20 Stavanger
B ng trên bao g m 3 m u tin (dòng), m i m u tin t ng ng v i m t ng i, và b n c t ( ươ ườ LastName,
FirstName, AddressCity).
Câu truy v n SQL
V i SQL ta có th truy v n CSDL và nh n l y k t qu tr v thông qua các câu truy v n. ế
M t câu truy v n nh sau: ư
SELECT LastName FROM Persons
S tr v k t qu nh sau: ế ư
LastName
Hansen
Svendson
Pettersen
L u ý:ư M t s h th ng CSDL đòi h i câu l nh SQL ph i k t thúc b ng m t d u ch m ph y ( ế ;). Chúng ta
s không dùng d u ch m ph y trong bài vi t này. ế
SQL là ngôn ng thao tác d li u (DML - Data Manipulation Language)
SQL là cú pháp đ th c thi các câu truy v n. SQL cũng bao g m cú pháp đ c p nh t - s a đ i, chèn thêm và
xoá các m u tin.
Sau đây là danh sách các l nh và truy v n d ng DML c a SQL:
SELECT - l y d li u t m t b ng CSDL.
UPDATE - c p nh t/s a đ i d li u trong b ng.
DELETE - xoá d li u trong b ng.
INSERT INTO - thêm d li u m i vào b ng.
SQL là ngôn ng đ nh nghĩa d li u (DDL - Data Definition Language)
Ph n DDL c a SQL cho phép t o ra ho c xoá các b ng. Chúng ta cũng có th đ nh nghĩa các khoá (key), ch
m c (index), ch đ nh các liên k t gi a các b ng và thi t l p các quan h ràng bu c gi a các b ng trong ế ế
CSDL.
Các l nh DDL quan tr ng nh t c a SQL là:
CREATE TABLE - t o ra m t b ng m i.
ALTER TABLE - thay đ i c u trúc c a b ng.
DROP TABLE - xoá m t b ng.
CREATE INDEX - t o ch m c (khoá đ tìm ki m - search key). ế
DROP INDEX - xoá ch m c đã đ c t o. ượ
H c SQL căn b n đây (p2) !
Mình th y trên các di n đàn r t ít v Mysql . Vì th này m o m i s u t m và b sung cho nh ng ai ch a ế ư ư
bi t chút gì v Mysql .ế Ph n 1 Đăng b i: admin S l n xem: 425
Câu l nh SELECT
Câu l nh SELECT đ c dùng đ truy xu t d li u t m t b ng. K t qu tr v d i d ng b ng đ c l uượ ế ướ ượ ư
trong 1 b ng, g i là b ng k t qu - result table (còn đ c g i là t p k t qu - result set). ế ượ ế
Cú pháp
Cú pháp c a câu l nh SELECT nh sau: ư
SELECT tên_các_c t
FROM tên_b ng
Truy xu t nhi u c t
Đ truy xu t các c t mang tên LastNameFirstName, ta dùng m t câu l nh SELECT nh sau:ư
SELECT LastName, FirstName FROM Persons
B ng Persons:
LastName FirstName Address City
Hansen Ola Timoteivn 10 Sandnes
Svendson Tove Borgvn 23 Sandnes
Pettersen Kari Storgt 20 Stavanger
K t qu tr v :ế
LastName FirstName
Hansen Ola
Svendson Tove
Pettersen Kari
Truy xu t t t c các c t
Đ truy xu t t t c các c t t b ng Persons, ta dùng ký hi u * thay cho danh sách các c t:
SELECT * FROM Persons
K t qu tr v :ế
LastName FirstName Address City
Hansen Ola Timoteivn 10 Sandnes
Svendson Tove Borgvn 23 Sandnes
Pettersen Kari Storgt 20 Stavanger
T p k t qu ế
K t qu tr v t m t câu truy v n SQL đ c l u trong 1 t p k t qu (result set). H u h t các h th ngế ượ ư ế ế
ch ng trình CSDL cho phép duy t qua t p k t qu b ng các hàm l p trình nh ươ ế ư Move-To-First-Record,
Get-Record-Content, Move-To-Next-Record v.v...
D u ch m ph y (;) phía sau câu l nh
D u ch m ph y là m t cách chu n đ phân cách các câu l nh SQL n u nh h th ng CSDL cho phép nhi u ế ư
câu l nh SQL đ c th c thi thông qua m t l i g i duy nh t. ượ
Các câu l nh SQL trong bài vi t này đ u là các câu l nh đ n (m i câu l nh là m t và ch m t l nh SQL). ế ơ
MS Access và MS SQL Server không đ i h i ph i có d u ch m ph y ngay sau m i câu l nh SQL, nh ng ư
m t s ch ng trình CSDL khác có th b t bu c b n ph i thêm d u ch m ph y sau m i câu l nh SQL (cho ươ
dù đó là câu l nh đ n). Xin nh c l i, trong bài vi t này chúng ta s không dùng d u ch m ph y cu i câu ơ ế
l nh SQL.
H c SQL căn b n đây (p3) !
Mình th y trên các di n đàn r t ít v Mysql . Vì th này m o m i s u t m và b sung cho nh ng ai ch a ế ư ư
bi t chút gì v Mysqlế
Đăng b i: admin S l n xem: 395
M nh đ WHERE đ c dùng đ thi t l p đi u ki n truy xu t.ượ ế
M nh đ WHERE
Đ truy xu t d li u trong b ng theo các đi u ki n nào đó, m t m nh đ WHERE th đ c thêm vào câu ượ
l nh SELECT.
Cú pháp
Cú pháp m nh đ WHERE trong câu l nh SELECT nh sau:ư
SELECT tên_c t FROM tên_b ng
WHERE tên_c t phép_toán giá_tr
Trong m nh đ WHERE, các phép toán đ c s d ng làượ
Phép toán Mô t
= So sánh b ng
<> So sánh không b ng
> L n h n ơ
< Nh h n ơ
>= L n h n ho c b ng ơ
<= Nh h n ho c b ng ơ
BETWEEN N m gi a m t kho ng
LIKE So sánh m u chu i
L u ý:ư Trong m t s phiên b n c a SQL, phép toán <> có th đ c vi t d i d ng ượ ế ướ !=
S d ng m nh đ WHERE
Đ l y danh sách nh ng ng i s ng thành ph ườ Sandnes, ta s d ng m nh đ WHERE trong câu l nh
SELECT nh sau:ư
SELECT * FROM Persons
WHERE City = 'Sandnes'
B ng Persons:
LastName FirstName Address City Year
Hansen Ola Timoteivn 10 Sandnes 1951
Svendson Tove Borgvn 23 Sandnes 1978
Svendson Stale Kaivn 18 Sandnes 1980
Pettersen Kari Storgt 20 Stavanger 1960
K t qu tr v :ế
LastName FirstName Address City Year
Hansen Ola Timoteivn 10 Sandnes 1951
Svendson Tove Borgvn 23 Sandnes 1978
Svendson Stale Kaivn 18 Sandnes 1980
S d ng d u nháy
L u ý r ng ví d trên ta đã s d ng hai d u nháy đ n (ư ơ ') bao quanh giá tr đi u ki n 'Sandnes'.
SQL s d ng d u nháy đ n bao quanh các giá tr d ng chu i văn b n (text). Nhi u h CSDL còn cho phép ơ
s d ng d u nháy kép ( "). Các giá tr d ng s không dùng d u nháy đ bao quanh.
V i d li u d ng chu i văn b n:
Câu l nh đúng:
SELECT * FROM Persons WHERE FirstName = 'Tove'
Câu l nh sai:
SELECT * FROM Persons WHERE FirstName = Tove
V i d li u d ng s :
Câu l nh đúng:
SELECT * FROM Persons WHERE Year > 1965
Câu l nh sai:
SELECT * FROM Persons WHERE Year > '1965'
Phép toán đi u ki n LIKE
Phép toán LIKE đ c dùng đ m ki m m t chu i m u văn b n trên m t c t.ượ ế
Cú pháp
Cú pháp c a phép toán LIKE nh sau: ư