ngoÂn ngÖÕ sql

Post on 03-Jan-2016

45 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

NGOÂN NGÖÕ SQL. 1. Ngoân ngöõ moâ taû döõ lieäu 2. Ngoân ngöõ thao taùc döõ lieäu 3. Ngoân ngöõ truy vaán döõ lieäu. CÔ SÔÛ DÖÕ LIEÄU VÍ DUÏ. Cho CSDL goàm caùc Baûng sau: SINHVIEN ( MSSV , HOLOT, TEN, PHAI, NGAYSINH, QUEQUAN, DIACHI, MALOP) DSLOP ( MALOP , TENLOP, SISO, MAKHOA) - PowerPoint PPT Presentation

TRANSCRIPT

1

NGOÂN NGÖÕ SQL

1. Ngoân ngöõ moâ taû döõ lieäu2. Ngoân ngöõ thao taùc döõ lieäu3. Ngoân ngöõ truy vaán döõ lieäu

2

CÔ SÔÛ DÖÕ LIEÄU VÍ DUÏ

Cho CSDL goàm caùc Baûng sau:SINHVIEN (MSSV, HOLOT, TEN, PHAI,

NGAYSINH, QUEQUAN, DIACHI, MALOP)DSLOP (MALOP, TENLOP, SISO, MAKHOA)DSKHOA (MAKHOA, TENKHOA)MONHOC (MAMH, TENMH, SOTC)KETQUA (MSSV, MAMH, DIEM)

3

CÔ SÔÛ DÖÕ LIEÄU VÍ DUÏ

MSSV HOLOT TEN PHAI NGAYSINH

QUEQUAN DIACHI MALOP

T001 LE VAN TU NAM 13/5/81 TPHCM 12 LELOI-Q1 – TPHCM T1N

D002 TRAN THI DIEM NU 3/12/82 HANOI 3/1A BAHAT - Q10 D1N

H003 NGUYEN VU LINH NAM 1/6/80 DONGTHAP 25 VOTHISAU - Q3 H1N

K004 CAO VAN HUNG NAM 31/7/81 VINHLONG 33/5 HONG HA – TB K1N

T005 LE TIEN DUNG NAM 11/3/84 DONGNAI 77/8 LE LOI - Q1 T2N

T006 DAO VAN DUNG NAM 6/6/79 HUE 38/4 TAM DAO – Q10 T1N

H007 TRAN MINH HANH NU 4/8/81 HANOI 9 BINHGIA – TB H1N

D008 DINH THI TUYET NU 23/4/82 TPHCM 22 CC MIEUNOI D2N

D009 LY HAI TRIEU NAM 18/2/81 CANTHO F7 NGUYEN OANH D1N

K010 HA NGUYEN XUAN NU 16/3/80 ANGIANG 365 CAO THANG K1N

SINHVIEN

4

CÔ SÔÛ DÖÕ LIEÄU VÍ DUÏ

MALOP TENLOP SISO MAKHOA

T1N TIN HOC 1 75 TH

T2N TIN HOC 2 68 TH

D1N DIEN TU 1 57 DD

D2N DIEN TU 2 61 DD

H1N HOA HOC 1 123 HH

K1N KINH TE 1 84 KT

DSLOP

MAKHOA TENKHOA

TH CONG NGHE THONG TIN

DD DIEN – DIEN TU

HH CONG NGHE HOA

KT KINH TE

DSKHOA

5

CÔ SÔÛ DÖÕ LIEÄU VÍ DUÏ

MAMH TENMH SOTC

THCB TIN HOC CAN BAN 4

THVP TIN HOC VAN PHONG 3

CSDL CO SO DU LIEU 4

LTCB LAP TRINH CAN BAN 5

CTDL CAU TRUC DU LIEU 4

MANG MANG MAY TINH 3

MONHOCMSSV MAMH DIEM

T001 THVP 6

T001 CSDL 7

D002 THCB 8

D002 THVP 5

D002 LTCB 3

H003 LTCB 9

H003 CTDL 6

K004 THCB 5

K004 THVP 7

K004 CSDL 9

T005 THCB 1

T005 MANG 5

KETQUA

6

1. Ngoân ngöõ moâ taû döõ lieäu1. Leänh Taïo Baûng2. Leänh Xoùa Baûng3. Leänh Theâm Coät4. Leänh Xoùa Coät5. Leänh Söûa Coät6. Leänh Taïo Khoùa chính7. Leänh Taïo Khoùa ngoaïi8. Leänh Taïo raøng buoäc veà mieàn giaù

trò9. Leänh Taïo raøng buoäc duy nhaát10. Leänh Taïo chæ muïc11. Leänh Xoùa chæ muïc

7

1. Ngoân ngöõ moâ taû döõ lieäu1.Leänh Taïo BaûngCREATE TABLE <teân baûng> (<teân coät 1> <kieåu döõ lieäu 1> [NOT NULL],<teân coät 2> <kieåu döõ lieäu 2> [NOT NULL],…<teân coät n> <kieåu döõ lieäu n> [NOT

NULL]);

NOT NULL : Coät khoâng ñöôïc pheùp roãng

8

1. Ngoân ngöõ moâ taû döõ lieäu1.Leänh Taïo Baûng – Ví duïCREATE TABLE SINHVIEN (

MSSV char(4) not null,HOLOT varchar(20) not null,TEN varchar(7) not null,PHAI bit,NGAYSINH datetime,QUEQUAN varchar(20),DIACHI varchar(50),MALOP char(3) not null);

9

1. Ngoân ngöõ moâ taû döõ lieäu2.Leänh Xoùa BaûngDROP TABLE <teân baûng>;

Ví duï:DROP TABLE SINHVIEN;

10

1. Ngoân ngöõ moâ taû döõ lieäu3.Leänh Theâm CoätALTER TABLE <teân baûng> ADD <teân coät> <kieåu döõ lieäu> [NOT

NULL];

Ví duï:ALTER TABLE SINHVIEN ADD DOANVIEN bit;

11

1. Ngoân ngöõ moâ taû döõ lieäu4.Leänh Xoùa CoätALTER TABLE <teân baûng> DROP COLUMN <teân coät>;

Ví duï:ALTER TABLE SINHVIEN DROP COLUMN DOANVIEN;

12

1. Ngoân ngöõ moâ taû döõ lieäu5.Leänh Söûa CoätALTER TABLE <teân baûng> ALTER COLUMN <teân coät> <kieåu döõ

lieäu>;

Ví duï:ALTER TABLE SINHVIEN ALTER COLUMN Ngaysinh SmallDatetime;

13

1. Ngoân ngöõ moâ taû döõ lieäu6.Leänh Taïo Khoùa chínhALTER TABLE <teân baûng>

ADD CONSTRAINT <teân raøng buoäc>PRIMARY KEY (DS teân coät);

Löu yù:-Teân raøng buoäc laø duy nhaát-Caùc coät trong DS teân coät phaûi coù

thuoäc tính NOT NULL

14

1. Ngoân ngöõ moâ taû döõ lieäu6.Leänh Taïo Khoùa chính - Ví duï:ALTER TABLE SINHVIEN

ADD CONSTRAINT Kc_Sv PRIMARY KEY (mssv);

ALTER TABLE KETQUA ADD CONSTRAINT Kc_Kq PRIMARY KEY (mssv,mamh);

15

1. Ngoân ngöõ moâ taû döõ lieäu7.Leänh Taïo Khoùa ngoaïiALTER TABLE <teân baûng>

ADD CONSTRAINT <teân raøng buoäc>FOREIGN KEY (DS teân coät)REFERENCES <teân baûng> (DS teân coät);

Löu yù:-Teân raøng buoäc laø duy nhaát

16

1. Ngoân ngöõ moâ taû döõ lieäu7.Leänh Taïo Khoùa ngoaïi - Ví duï:ALTER TABLE SINHVIEN

ADD CONSTRAINT Kn_Sv FOREIGN KEY(malop)REFERENCES DSLOP (malop);

ALTER TABLE KETQUA ADD CONSTRAINT Kn_Kq1 FOREIGN KEY (mssv)REFERENCES SINHVIEN (mssv);

17

1. Ngoân ngöõ moâ taû döõ lieäu8.Leänh Taïo raøng buoäc veà mieàn

giaù tròALTER TABLE <teân baûng>

ADD CONSTRAINT <teân raøng buoäc>CHECK (Ñieàu kieän);

Löu yù:-Teân raøng buoäc laø duy nhaát

18

1. Ngoân ngöõ moâ taû döõ lieäu8.Leänh Taïo raøng buoäc mieàn giaù

trò - Ví duï:

ALTER TABLE KETQUA ADD CONSTRAINT Kt_Kq CHECK (Diem between 0 AND 10);

ALTER TABLE DSLOP ADD CONSTRAINT Kt_Dslop CHECK (Siso >= 50);

19

1. Ngoân ngöõ moâ taû döõ lieäu9.Leänh Taïo raøng buoäc duy nhaátALTER TABLE <teân baûng> ADD CONSTRAINT <teân raøng buoäc>UNIQUE (DS Teân coät);

Löu yù:-Teân raøng buoäc laø duy nhaát

20

1. Ngoân ngöõ moâ taû döõ lieäu9.Leänh Taïo raøng buoäc duy nhaát – Ví

duïTeân moân hoïc khoâng ñöôïc truøng nhau:

ALTER TABLE MONHOC ADD CONSTRAINT Dn_MhUNIQUE (TenMH);

21

1. Ngoân ngöõ moâ taû döõ lieäu10.Leänh Taïo chæ muïcCREATE INDEX <teân Index>ON <teân baûng> (<coät 1>, <coät 2>, ...) ;

Ngöõ nghóa: Taïo chæ muïc ñeå löu thöù töï saép xeáp caùc baûn ghi theo giaù trò taêng daàn cuûa caùc coät ñöôïc cho trong danh saùch.

Ghi chuù: Chæ neân taïo chæ muïc cho caùc baûng coù nhieàu baûn ghi vaø ít ñöôïc caäp nhaät, vaø chæ neân taïo treân caùc coät maø thoâng tin cuûa noù thöôøng xuyeân ñöôïc tham khaûo tôùi.

22

1. Ngoân ngöõ moâ taû döõ lieäu10.Leänh Taïo chæ muïc – Ví duï:CREATE INDEX Cm_sv1ON SINHVIEN (Ten);

CREATE INDEX Cm_mh1ON MONHOC (TenMH);

23

1. Ngoân ngöõ moâ taû döõ lieäu11.Leänh Xoùa chæ muïcDROP INDEX <teân Index> ;

Ví duï:DROP INDEX Cm_sv1

DROP INDEX Cm_mh1

24

2. Ngoân ngöõ thao taùc döõ lieäu1. Leänh Theâm maãu tin

2. Leänh Xoùa maãu tin3. Leänh caäp nhaät maãu tin

25

2. Ngoân ngöõ thao taùc döõ lieäu1.Leänh theâm maãu tin (1)INSERT INTO <teân baûng> (<teân coät

1>, ...)VALUES (<bieåu thöùc 1>, <bieåu thöùc

2>, ...);

Löu yù:

-Kieåu döõ lieäu-Chieàu daøi-Caùc raøng buoäc toaøn veïn: khoùa chính,

khoùa ngoaïi, kieåm tra, duy nhaát

26

2. Ngoân ngöõ thao taùc döõ lieäu1.Leänh theâm maãu tin (1) – Ví duï

Theâm 1 Sinh vieân môùi:

INSERT INTO SINHVIEN (MSSV, HOLOT, TEN, PHAI, NGAYSINH, QUEQUAN, DIACHI, MALOP)

VALUES (‘T005’,’LE TIEN’,’DUNG’,1,’3/18/84’, ’DONGNAI’,’77/8 LE LOI – Q1’,’T2N’);

Theâm 1 Moân hoïc môùi:INSERT INTO MONHOC (MAMH, TENMH, SOTC)VALUES (‘CSDL’,’CO SO DU LIEU’,4);

27

2. Ngoân ngöõ thao taùc döõ lieäu1.Leänh theâm maãu tin (2)Neáu caùc bieåu thöùc sau töø khoaù VALUES

hoaøn toaøn phuø hôïp veà thöù töï vôùi caùc coät trong baûng danh saùch caùc coät sau töø khoùa INTO coù theå ñöôïc boû qua

INSERT INTO <teân baûng>VALUES (<bieåu thöùc 1>, <bieåu thöùc

2>, ...);

28

2. Ngoân ngöõ thao taùc döõ lieäu1.Leänh theâm maãu tin (2) – Ví duï

Theâm 1 Sinh vieân môùi: INSERT INTO SINHVIEN

VALUES (‘T005’,’LE TIEN’,’DUNG’,1,’3/18/84’, ’DONGNAI’,’77/8 LE LOI – Q1’,’T2N’);

Theâm 1 Moân hoïc môùi:INSERT INTO MONHOC

VALUES (‘CSDL’,’CO SO DU LIEU’,4);

29

2. Ngoân ngöõ thao taùc döõ lieäu1.Leänh theâm maãu tin (3)

Ngoaøi ra ta coù theå theâm (caùc) maãu tin vaøo baûng töø caâu leänh truy vaán (Select)

INSERT INTO <teân baûng> (<teân coät 1>, ...)

<Caâu leänh Select>hoaëcINSERT INTO <teân baûng><Caâu leänh Select>

30

2. Ngoân ngöõ thao taùc döõ lieäu1.Leänh theâm maãu tin (3) – Ví duï

Theâm Sinh vieân môùi töø 1 danh saùch:

INSERT INTO SINHVIEN SELECT * FROM DSSV_NEW ;

Löu yù:-DSSV_New coù cuøng caáu truùc vôùi

SINHVIEN

31

2. Ngoân ngöõ thao taùc döõ lieäu2.Leänh Xoùa maãu tin Vieäc loaïi boû maãu tin khoûi 1 baûng trong

CSDL laø 1 trong nhöõng thao taùc caäp nhaät döõ lieäu ñöôïc tieán haønh moät caùch thöôøng xuyeân

Cuù phaùp:

DELETE FROM <teân baûng>[WHERE <ñieàu kieän>];

Ngöõ nghóa: Caùc maãu tin thoaû maõn ñieàu kieän sau WHERE seõ bò xoaù khoûi baûng. Neáu khoâng coù meänh ñeà WHERE thì taát caû caùc maãu tin cuûa baûng seõ bò xoùa khoûi baûng.

32

2. Ngoân ngöõ thao taùc döõ lieäu2.Leänh Xoùa maãu tin – Ví duï:Xoùa Sinh vieân coù Maõ soá laø T005

DELETE FROM SINHVIENWHERE MSSV=‘T005’;

Xoùa taát caû caùc moân hoïc coù 5 tín chæ

DELETE FROM MONHOCWHERE SOTC = 5;

33

2. Ngoân ngöõ thao taùc döõ lieäu3.Leänh caäp nhaät maãu tin

Cuù phaùpUPDATE <teân baûng>

SET <teân coät 1> = <bieåu thöùc 1>, <teân coät 2> = <bieåu thöùc 2>, ...<teân coät n> = <bieåu thöùc n>

[WHERE <ñieàu kieän>];

34

2. Ngoân ngöõ thao taùc döõ lieäu3.Leänh caäp nhaät maãu tin

Ngöõ nghóa: Giaù trò cuûa caùc field coù teân trong danh saùch <teân coät 1>, <teân coät 2> ... cuûa nhöõng maãu tin thoaû maõn ñieàu kieän sau WHERE seõ ñöôïc söûa ñoåi thaønh giaù trò cuûa caùc <bieåu thöùc 1>, <bieåu thöùc 2> ... töông öùng.

Neáu khoâng coù meänh ñeà WHERE thì taát caû caùc maãu tin cuûa baûng seõ ñöôïc söûa ñoåi.

35

2. Ngoân ngöõ thao taùc döõ lieäu3.Leänh caäp nhaät maãu tinVí duï:Taêng cho taát caû sinh vieân 1 ñieåm moân

THCBUPDATE KETQUA

SET DIEM = DIEM +1 WHERE MAMH = ‘THCB’;

Caäp nhaät só soá lôùp T2N thaønh 90UPDATE DSLOP

SET SISO = 90 WHERE MALOP = ‘T2N’;

36

3. Ngoân ngöõ truy vaán döõ lieäu1. Cuù phaùp toång quaùt

2. Daïng ñôn giaûn3. Daáu *4. Meänh ñeà WHERE5. Meänh ñeà ORDER BY6. Meänh ñeà GROUP BY7. Meänh ñeà HAVING8. Phaùt bieåu Select vôùi AS9. Phaùt bieåu Select vôùi TOP N10. Phaùt bieåu Select vôùi DISTINCT11. Truy vaán töø nhieàu Baûng12. Truy vaán con

37

3. Ngoân ngöõ truy vaán döõ lieäu1.Cuù phaùp toång quaùt

SELECT <Danh saùch caùc coät>FROM <Danh saùch Baûng>WHERE <Caùc ñieàu kieän>GROUP BY <Teân coät>HAVING <Ñieàu kieän döïa treân GROUP BY>ORDER BY <Danh saùch coät>

38

3. Ngoân ngöõ truy vaán döõ lieäu2.Daïng ñôn giaûnSELECT <Danh saùch caùc coät>

FROM <Teân Baûng> Trích ra moät soá coät trong 1 Baûng naøo

ñoù

Ví duï: Laáy ra MAMH, TENMH töø baûng MONHOC

SELECT MAMH, TENMHFROM MONHOC;

39

3. Ngoân ngöõ truy vaán döõ lieäu3.Daáu *Daáu * ñaïi dieän cho taát caû caùc coät

SELECT *FROM <Teân Baûng>

Ví duï: Laáy ra danh saùch caùc moân hoïc

SELECT *FROM MONHOC;

40

3. Ngoân ngöõ truy vaán döõ lieäu4.Meänh ñeà WHEREDuøng ñeå ñaët ñieàu kieän trích döõ lieäu

SELECT <Danh saùch caùc coät>FROM <Teân Baûng>WHERE <Danh saùch ñieàu kieän>

Ví duï: Laáy ra MSSV, HOTEN cuûa Sinh vieân queâ quaùn ‘HA NOI’

SELECT MSSV, HOLOT, TENFROM SINHVIENWHERE QUEQUAN = ‘HA NOI’;

41

3. Ngoân ngöõ truy vaán döõ lieäu4.Meänh ñeà WHERECaùc pheùp toaùn trong meänh ñeà WHERE-So saùnh: >, <. >=, <=, =, <>-Logic: And, Or, NotVí duï: Laáy ra MSSV, HOTEN cuûa Sinh vieân lôùp

T2N queâ quaùn ‘HA NOI’

SELECT MSSV, HOLOT, TENFROM SINHVIENWHERE QUEQUAN = ‘HA NOI’ AND MALOP=

‘T2N’;

42

3. Ngoân ngöõ truy vaán döõ lieäu4.Meänh ñeà WHEREToaùn töû Between: naèm trong 1 mieàn

Ví duï: Trích ra danh saùch Sinh vieân sinh naêm 1982

SELECT *FROM SINHVIENWHERE NGAYSINH Between ‘1/1/1982’ And

’12/31/1982’;

43

3. Ngoân ngöõ truy vaán döõ lieäu4.Meänh ñeà WHEREToaùn töû LIKE: pheùp toaùn so saùnh gaàn

gioáng, söû duïng daáu caùc kyù töï ñaïi dieän nhö _ (1 kyù töï), % (1 chuoãi baát kyø)

Ví duï: Trích ra danh saùch Sinh vieân Hoï ‘Phan’

SELECT *FROM SINHVIENWHERE HOLOT LIKE ‘Phan%’;

44

3. Ngoân ngöõ truy vaán döõ lieäu4.Meänh ñeà WHERE

Toaùn töû IN: pheùp toaùn so saùnh trong 1 taäp hôïp, 1 danh saùch

Ví duï: Trích ra danh saùch Sinh vieân queâ quaùn ôû caùc tænh ‘Caàn Thô’, ‘An Giang’, ‘Kieân Giang’

SELECT *FROM SINHVIENWHERE QUEQUAN IN (‘Caàn Thô’, ‘An

Giang’, ‘Kieân Giang’);

45

3. Ngoân ngöõ truy vaán döõ lieäu4.Meänh ñeà WHEREIS NULL ( IS NOT NULL ): kieåm tra 1 giaù

trò coù roãng hay khoâng (keát quaû: TRUE – FALSE)

Ví duï: Trích ra danh saùch Sinh vieân chöa coù ñòa chæ

SELECT *FROM SINHVIENWHERE DIACHI IS NULL;

46

3. Ngoân ngöõ truy vaán döõ lieäu4.Meänh ñeà WHEREToaùn töû Exists: traû veà TRUE neáu coù ít

nhaát 1 maãu tin toàn taïiVí duï: Cho bieát coù sinh vieân naøo Queâ

quaùn ‘Nha Trang’ khoâng?If Exists (SELECT *FROM SINHVIENWHERE QUEQUAN = ‘Nha Trang’)Print ‘Co sinh vien’;

47

3. Ngoân ngöõ truy vaán döõ lieäu5.Meänh ñeà ORDER BYSaép xeáp keát quaû theo thöù töï mong

muoán

ORDER BY <DS Teân coät> [ASC | DESC]Ví duï: Trích ra danh saùch sinh vieân nöõ,

saép theo teân taêng daàn?SELECT MSSV, HOLOT, TEN, MALOPFROM SINHVIENWHERE PHAI= 0ORDER BY TEN ASC

48

3. Ngoân ngöõ truy vaán döõ lieäu6.Meänh ñeà GROUP BYNhoùm döõ lieäu laïi theo töøng nhoùm

ñeå thöïc hieän caùc pheùp toaùn thoáng keâ

GROUP BY <DS Teân coät>

Ví duï: Cho bieát soá löôïng sinh vieân töøng lôùp

SELECT MALOP, COUNT(*) AS SOSVFROM SINHVIENGROUP BY MALOP

49

3. Ngoân ngöõ truy vaán döõ lieäu6.Meänh ñeà GROUP BYMoät soá Haøm thoâng duïng:

-AVG: giaù trò trung bình-MIN: giaù trò nhoû nhaát-MAX: giaù trò lôùn nhaát-COUNT: ñeám soá phaàn töû-SUM : Toång caùc phaàn töû

50

3. Ngoân ngöõ truy vaán döõ lieäu7.Meänh ñeà HAVINGÑaët ñieàu kieän choïn sau khi ñaõ nhoùm

döõ lieäu baèng meänh ñeà GROUP BYVí duï: Trích ra Danh saùch caùc lôùp coù

treân 20 sinh vieân

SELECT MALOP, COUNT(*) AS SOSVFROM SINHVIENGROUP BY MALOP HAVING COUNT(*) > 20 ;

51

3. Ngoân ngöõ truy vaán döõ lieäu8.Phaùt bieåu Select vôùi ASÑaët laïi teân Field khi hieån thò keát quaûVí duï: Trích ra Danh saùch caùc lôùp coù

treân 20 sinh vieân

SELECT MALOP AS ML, COUNT(*) AS SOSVFROM SINHVIENGROUP BY MALOP HAVING COUNT(*) > 20 ;

52

3. Ngoân ngöõ truy vaán döõ lieäu9.Phaùt bieåu Select vôùi TOP NCho pheùp laáy ra chæ moät soá maãu tin

naøo ñoù theo 1 tieâu chuaån naøo ñoù.

Ví duï: Trích ra Danh saùch 10 sinh vieân ñaàu tieân.

SELECT TOP 10 *FROM SINHVIEN;

53

3. Ngoân ngöõ truy vaán döõ lieäu10.Phaùt bieåu Select vôùi DISTINCTNeáu keát quaû truy vaán coù nhieàu maãu

tin truøng nhau, ñeå chæ laáy 1 maãu tin ta duøng DISTINCT

Ví duï: Trong Danh saùch Sinh vieân, cho bieát coù nhöõng lôùp naøo

SELECT DISTINCT MALOPFROM SINHVIEN;

54

3. Ngoân ngöõ truy vaán döõ lieäu11.Truy vaán töø nhieàu baûngKhi thoâng tin caàn laáy ra coù töø nhieàu

baûng khaùc nhau, caàn thöïc hieän truy vaán töø nhieàu baûng

SELECT <Danh saùch caùc coät>FROM <Danh saùch caùc Baûng>WHERE <Caùc ñieàu kieän>

55

3. Ngoân ngöõ truy vaán döõ lieäu11.Truy vaán töø nhieàu baûng

Löu yù: Caàn keát caùc baûng laïi vôùi nhau. Vôùi

n baûng caàn coù n-1 ñieàu kieän keát. Caùc teân coät cuøng coù ôû nhieàu

baûng caàn ghi roõ theo daïng [Teân Baûng].[Teân coät]

56

3. Ngoân ngöõ truy vaán döõ lieäu11.Truy vaán töø nhieàu baûng

Ví duï: Trích ra MSSV, HOTEN, MALOP,TENLOP cuûa nhöõng sinh vieân teân ‘NAM’

SELECT MSSV, HOLOT, TEN, DSLOP.MALOP, TENLOPFROM SINHVIEN, DSLOPWHERE SINHVIEN.MALOP = DSLOP.MALOP

AND TEN=‘NAM’;

57

3. Ngoân ngöõ truy vaán döõ lieäu11.Truy vaán töø nhieàu baûng-Coù theå söû duïng teân taét cuûa caùc Baûng

Ví duï: Trích ra MSSV, HOTEN, MALOP, TENLOP cuûa nhöõng sinh vieân khoa CNTT

SELECT MSSV, HOLOT, TEN, L.MALOP, TENLOPFROM SINHVIEN S, DSLOP L, DSKHOA KWHERE S.MALOP = L.MALOP

AND L.MAKHOA = K.MAKHOAAND TENKHOA=‘Cong nghe thong tin’;

58

3. Ngoân ngöõ truy vaán döõ lieäu12.Truy vaán con-Ñoâi khi ta caàn söû duïng keát quaû cuûa 1

caâu truy vaán ñeå laøm ñieàu kieän cho 1 caâu truy vaán khaùc, khi ñoù ta goïi laø truy vaán con.

-Khi thöïc hieän, truy vaán con seõ ñöôïc thöïc hieän tröôùc, roài laáy keát quaû ñeå thöïc hieän truy vaán lôùn

59

3. Ngoân ngöõ truy vaán döõ lieäu12.Truy vaán conDaïng toång quaùt:

SELECT <Danh saùch caùc coät>FROM <Danh saùch Baûng>WHERE <Caùc ñieàu kieän>… < Teân coät > IN ( NOT IN, =, <>, …)

( SELECT <Danh saùch caùc coät>FROM <Danh saùch Baûng>WHERE <Caùc ñieàu kieän>)

60

3. Ngoân ngöõ truy vaán döõ lieäu12.Truy vaán conVí duï: Trích ra DS nhöõng SV coù ñieåm

moân THVP cao nhaát

SELECT S.MSSV,HOLOT,TEN,MAMH,DIEMFROM SINHVIEN S, KETQUA KWHERE S.MSSV = K.MSSV

AND MAMH=‘THVP’AND DIEM = ( SELECT MAX(DIEM)

FROM KETQUAWHERE MAMH=‘THVP’)

61

From --> Where --> Group By --> Having --> Select --> Order

top related