Upload
hung-pham-thai
View
2.037
Download
1
Embed Size (px)
Citation preview
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 28
Ch ng IV:
QUERY-TRUY V N D LI U4.1. Gi i thi u:
Query là công c cho phép truy v n và x lý d li u, rút trích hi n th nh ngthông tin c th t các Table và thay i d li u b ng nhi u cách khác nhau. Kh n ng
lý truy v n là m t b c quan tr ng trong vi c xây d ng ng d ng.Query là công c khá c tr ng c a Microsoft Access, giúp b n nêu ra và áp
ng các yêu c u truy v n s li u trên DBMS xem, s a và phân tích hay t ng h p sli u d i nhi u hình th c khá phong phú. th c hi n Query, b t bu c ph i cóDatabase và bên trong ó ã có m t hay nhi u Table. S li u thì c l u trên Table,còn Query là công c tìm và nhìn s li u d i nhi u góc khác nhau, và có th khinhìn s li u qua Query, b n th c hi n các thao tác s a ch a thì các s a ch a ó l i cóhi u l c ng c l i lên trên nh ng Record c a chính các Table ã tham gia s d ng. Khicho th c hi n m t Query, Microsoft Access thu th p các s li u t các Table khác nhaunh m áp ng yêu c u v n tin c a b n, trong m t n v g i là “dynaset” (dynamicdataset) ngh a là d i hình th c m t b s li u “s ng ng”, ph n nh tình tr ng s li uhi n th i và khi b n u ch nh s li u trên dynaset thì ng th i s li u t các Table
ng c s a i theo.Query còn c dùng t o ra ngu n s li u c s cho các công c khác nh :
Form, Report, k c query khác, th m chí t o ra m t Table khác. V i nh ng thông tina ch n c c a Query, c ng có th tr c ti p in ra gi y, áp ng yêu c u cao h n
Table m t m c. Cùng m t l ng s li u nh nhau trong các Table, ai nhu n nhuy nn trong vi c thi t k và khai thác Query thì ng i ó th ng. Table ví nh ng v n,
Query là kh n ng kinh doanh trên ng v n ó, không bi t kinh doanh c t v n là cáich c.4.2. Các lo i Query thông d ng4.2.1. Select Query (Query ch n s li u)
Select Query là lo i Query c s d ng ph bi n nh t. Nó nh n d li u t m thay nhi u Table và hi n th k t qu trong m t datasheet và ó b n có th c p nh trecord v i m t s h n ch nh t nh. B n có th s d ng Query nhóm nh ng record
i và th c hi n tính t ng (SUM), m (COUNT), trung bình c ng (AVERAGE) và m t sphép tính t ng h p khác.
4.2.2. Delete query (Query xóa s li u)Xóa m t nhóm các record t m t hay nhi u Table. Ví d : b n có th s d ng
Delete Query xóa tên nh ng sinh viên n h c phí ho c nh ng sinh viên có trung bìnhng m hai h c k liên ti p nhau d i 4. i v i delete Query, b n có th gi i h n
vi c xóa c a mình trong m t ph m vi nào ó.4.2.3. Update query (Query c p nh t s li u)
Dùng thay i ng lo t nhi u record trong m t ho c nhi u Table. Ví d : b ncó th t ng m c a m t s sinh viên nào ó.
4.2.4. Append query (Query n i s li u)i thêm nhi u record t vào ph n cu i m t hay nhi u Table.
4.2.5. Make-table query (Query t o ra Table)o ra m t Table m i t m t hay nhi u table. c dùng vào m c ích t o các
Table d phòng, trích rút các record t m t ho c nhi u Table l u tr tr c khi xóacác record này kh i các Table hi n hành.
4.2.6. CrossTab Query (Query tham chi u chéo).
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 29
t nhóm s li u theo ch ng lo i và hi n th s li u d i hình th c c a m t B ngtính kèm theo s c ng ngang và c ng d c. Lo i này r t thích h p cho t o s li u c scho các báo bi u (report) và th (Chart).4.3. M t s thu t ng
Query Wizard: Là t o Query v i s h tr c a Microsoft Access. Thông th ngsau khi thi t k Query b ng Query Wizard b n ph i chuy n sang ch Design Viewthi t k l i cho phù h p v i nhu c u c a b n.
Design From Scratch: Cách thi t k này th ng c dùng cho nh ng ng i kháthành th o Microsoft Access. Trong tài li u tôi ch t p trung vào cách làm này.
Parameter Query: u có m t Query mà khi thi hành ph i nh n c các giá trthông s t o ra k t qu tùy theo thông s ó thì g i là Parameter Query. Các Querydùng vào b t k m c ích nào (nh Select Query, Append Query, Delete Query,...) n ucó nh n thông s , u có c tính Parameter Query. Các thông s này c xem nh lành ng giá tr ch a th xác nh vào lúc thi t k , c ghi d i d ng m t tên bi n.
Ví d : B n mu n li t kê nh ng sinh viên có ngày sinh trong kho ng th i giannào ó, t ngày m y n ngày m y, b n ghi Between [Ngay Sinh Tu:] And [Den Ngay] dòng Criteria d i c t NGAY c a b ng Query. Các t h p [Ngay Sinh Tu:], [Den Ngay]là nh ng bi n dùng trao thông s vào lúc thi hành.
Action Query: Là lo i Query mà khi thi hành, không hi n th m t k t qu nào trênmàn hình, mà âm th m làm m t vi c gì ó trên Table, ví d s a s li u (Update Query),xóa s li u (Delete Query), n i thêm record vào Table (Append Query), t o Table m i(Make Table Query). M t Action Query c ng có th c trao thông s tr c khi ch y.4.4. Vài hình nh v Query
4.4.1. Select Query: Là lo i Query thông d ng nh t, dùng ch n s li u tt hay nhi u Table th a tiêu chu n ch nh, và hi n th k t qu ó theo m t trình t
ng do ta ch nh.Ví d 1: T Table Products và Table Suppliers, trích ch n thành Query Products
and Suppliers và k t qu hi n th theo c t Product Name:
Ví d 2: B ng Query sau ây nêu thêm tiêu chu n ch n l a cho c t Supplier ph ilà “Pavlova, Ltd” ho c “Exotic Liquids”:
Khi ch y Query, Microsoft Access rúttrích các m u tin th a mãn u ki n
quy nh
..vàhi n th
theoth t
ch nh
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 30
4.4.2. CrossTab Query chobi t các tr t ng h p s li u (t ng tr ,
l t, s trung bình, tr cao nh thay th p nh t,...)Ví d bên c nh là k t qu c a m tCrossTab Query i chi u v i m tSelect Query, nó t p h p 3 dòngBuchanan thành m t dòng, 3 dòngCallahan thành m t dòng
Ví d 1: M t Crosstab Query giai n thi t k và k t qu :
Ví d 2: Select Query ch n s li u không k t nhóm, Select Query có k t nhóm vàCrossTab Query:
Ch nhcác t p h p
i m c này.
T p h p theodòng p h p theo c t c ích
p h p
Danh sách các Fieldtrên Table hay Query.
liên h c a các b ngth hi n qua m i n i.
T o query b ng cách ch ntable và/ho c query, xác
nh m i liên h , ch n fieldt danh sách, ch nh cách
p x p, a ra tiêu chu nch n l a.
Ch n field b ng cáchrê t danh sách và th
vào l i thi t k .
Các Field ch n, cáchp x p th t và tiêu
chu n.
Select
Query
CrossTab
Query
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 31
4.5. CÁC THÀNH PH N C B N TRONG TRUY V N4.5.1. H ng: Là i l ng không thay i trong quá trình tính toán.
a. H ng s : Bao g m t t c các s : 10, 50, 1254.56, .....b. H ng chu i, ký t : Là t p h p các ký t c t trong d u ngo c kép (“ “)
Ví d : “Trung Tâm Tin H c - i H c An Giang”c. H ng ngày: Là d li u ki u ngày c t trong c p d u #......#
Ví d : #08/10/1977#, #05/06/1979#4.5.2. Ki u: t ki u d li u là t p h p các giá tr mà m t bi n thu c ki u ó nh n cvà m t t p h p các phép toán có th áp d ng trên các giá tr ó.4.5.3. Bi n: Ch ng trình qu n lý các d li u t m thông qua tên bi n. M i bi n t ng
ng v i m t ki u d li u nh t nh. Khi vi t m t bi n thì ta ph i t trong c p d u ngo cvuông: [Tên Bi n]
Có hai lo i bi n:1. Bi n tr ng: Có th hi u nh là bi n n i. Khi tên bi n gi ng nh tên tr ng
trong các b ng thì Access hi u ó là bi n tr ng. Giá tr c a bi n tr ng là giá tr t ngng c a tr ng trong Table.
Chú ý: Khi có nhi u tên tr ng gi ng nhau trong các Table thì ta ph i ch rõ bi ntr ng ó c a Table nào theo cú pháp nh sau: [Tên Table]![Tên bi n]
Ví d : [SINHVIEN]![HOTEN] ho c [GIAOVIEN]![HOTEN]2. Bi n tham s : Có th hi u nh là bi n ngo i, khi tên bi n không gi ng b t c
tên tr ng nào trong CSDL thì Microsoft Access hi u ó là bi n tham s . Giá tr c a bi ntham s c nh p vào t bàn phím. Ví d : Trong Query có ch a bi n tham s và khithi hành Query này thì Microsoft Access hi n th lên h p h i tho i “Enter ParameterValue” i m c ích là yêu c u ta nh p giá tr cho bi n tham s ó. Ví d : Trong Query có bi n tham s : [Nganh Nao:].Khi thi hành, Query s hi n th ra h p tho i EnterParameter Value ta nh p giá tr cho bi n.
Select query không k t nhóm: T p h p li u t nhi u Table và s p th t Select query có k t nhóm:
ng h p s li u theo nhóm.
L p b ng thamchi u chéo d ngPivot Table theohàng và c t.
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 32
Chú ý: Khi nh p giá tr t bàn phím vào,Access m c nhiên hi u giá tr ó có ki u Text,
u này có th d n n vi c tính toán sai. Do v ytrong tr ng h p ta mu n báo cho MicrosoftAccess hi u giá tr mà ta nh p vào thu c ki u dli u khác thì ta ph i quy nh l i. Trình t làm nhsau:
1. R_Click vào vùng thi t k ch nParameter ho c vào menu Query\Parameter.
p tho i xu t hi n nh bên c nh.2. Nh p tên bi n vào c t Parameter và ch n
ki u d li u cho bi n trong c t Data Type.3. L p l i b c 2 cho các bi n khác. Click
OK.
4.5.4. Bi u th c (expression): Là t p h p các toán t và toán h ng và k t qu tr v làt giá tr duy nh t. Có 2 lo i bi u th c:1. Bi u th c logic: Là bi u th c mà k t qu tr v là True ho c False, th ngthì bi u th c logic c dùng làm u ki n trong vùng Criteria2. Bi u th c tính toán c (Calculated Field): Là m t tr ng (Field) c
nh ngh a trong Query và hi n th k t qu d i m t d ng khác c a d li u ãc l u tr . Giá tr c thay i m i khi giá tr trong bi u th c thay i. Bi u th c
tính toán c không ph i là bi u th c logic. Lo i bi u th c này c nh p vàodòng Field theo cú pháp: Nhãn:Bi u th c.
4.5.5. Các ký t i di n: i di n cho m t ho c nhi u ký t ngay v trí nó xu t hi n. Doy, ta có th dùng ký t i di n làm u ki n trích l c ho c tìm ki m mà không c n
chính xác tên chu i. Ký t i di n c dùng khi b n ch bi t m t ph n giá tr mu n tìm.Ký t Công d ng Ví d
* i di n cho m t s ký t b t k . Wh* t ng ng v iwhat, white, và why,..
? i di n cho m t ký t b t k B?ll t ng ng v iball, bell, và bill
[ ] i di n cho m t ký t xu t hi n trongp d u ngo c []
B[ae]ll t ng ng v iball và bell nh ng khôngth là bill
[!] i di n cho m t ký t b t k không xu thi n sau d u !
B[!Ae]ll t ng ng v ibill và bull nh ng khôngth là bell
-i di n cho m t ký t trong kho ng. B n
ch nh vùng theo th t t ng d n (t An Z nh ng không th t Z n A)
B[a-c]d t ng ng v ibad, bbd, và bcd
# i di n cho m t s 1#3 T ng ng v i103, 113, 123
Chú ý:- Ký t i di n th ng c s d ng trong tr ng h p d li u c a b n có ki u
Text. ôi khi b n có th s d ng nó v i nh ng d li u có ki u khác ch ng h n nh dli u ki u Date (ngày) nh ng b n ph i qui nh l i môi tr ng trong Control Panel(Regional Settings)
- Khi b n dùng ký t i di n tìm m t d u *, d u ?, d u #, d u [ ho c d u - thìn ph i t nh ng thành ph n này trong c p d u ngo c []. Ví d : tìm ki m d u
ch m h i, b n ph i ánh [?] trong h p tho i tìm ki m. N u nh b n tìm d u - ho cnh ng ký t khác cùng x y ra m t lúc, b n ph i t d u - tr c ho c sau t t c nh ng ký
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 33
khác bên trong c p d u ngo c []. (Tuy nhiên, n u nh b n có d u ! phía sau d u [, lúcnày b n ph i t d u [ phía sau d u !). N u nh b n ch tìm d u ! ho c d u ] b n không
n ph i t chúng trong c p d u ngo c []- B n không th tìm c p d u ngo c [] cùng m t lúc b i vì Microsoft Access hi u ó
là chu i r ng.4.5.6. Toán t :1. Toán t s h c
Toán t Cú pháp - Ý ngh a Ví d+, -, *, / C ng, tr , nhân, chia^ y th a. 2^3 =8, 3^3^3=27\ Chia l y ph n nguyên 7\2 = 3Mod Chia l y ph n d 7 mod 2 = 1
2. Toán t logicToán t Cú pháp - Ý ngh a Ví d
=, <> B ng, khác>, >= L n h n, l n h n ho c b ng<, <= Nh h n, nh h n ho c b ng
AND
Cú pháp: BT1 AND BT2 AND ..- V i BT1, BT2,… là các bi u th c logic.- Ý ngh a: Cho k t qu là True n u t t ccác bi u th c logic BT1, BT2, ... là True,ng c l i hàm cho k t qu là False.
(1>3) And (2<8): False(1<3) And (9>7): True
OR
Cú pháp: BT1 OR BT2 OR BT3 OR ...- V i BT1, BT2, .... là các bi u th c logic.- Ý ngh a: Cho k t qu là Flase n u t t
các bi u th c logic BT1, BT2, ... làFalse, ng c l i hàm cho k t qu là True.
(1>3) Or (2<8): False(1<3) or (9>7): True
NOT- Cú pháp: Not BT- Ý ngh a: Cho k t qu là True n u BT cógiá tr False, và ng c l i.
Not (3>9)=TrueNot ((2>1) And (1<9))=False
3. Toán t logicToán t Cú pháp - Ý ngh a Ví d
& Ghép chu i“C S ” & “ Tin H c” & “ 39 ng3/2” ( “C S Tin H c 39 ng3/2”
Like
- Cú pháp: <BT> Like <m u>- Trong ó: BT: Bi u th cchu i; <m u>: Là m t chu i ký
có th bao g m c ký t idi n.- Ý ngh a: Cho k t qu làTrue n u <BT> tho mãn<m u>, ng c l i cho k t quFalse
"aBBBa" Like "a*a" True"F" Like "[A-Z]" True"F" Like "[!A-Z]" False."a2a" Like "a#a" True."aM5b" Like "a[L-P]#[!c-e]"True."BAT123khg" Like "B?T*" True."CAT123khg" Like "B?T* False
Between
Cú pháp:<BT> Between GT1 And GT2
- Trong ó: BT là bi u th c,GT1, GT2 là các giá tr- Ý ngh a: Cho k t qu làTrue n u giá tr c a BT n mtrong kho ng GT1 n GT2,ng c l i cho k t qu là False
4 Between 2 And 9 True10 Between 1 And 3 False#08/10/1977# Between#01/10/1977# And #05/06/1979#True
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 34
In
Cú pháp:- BT in(GT1, GT2, GT3,....)- Trong ó: BT là bi u th c,GT1, GT2 là các giá tr .- Ý ngh a: Cho k t qu là True
u giá tr c a BT n m trongkho ng các giá tr GT1, GT2,GT3,.., ng c l i hàm cho k tqu là False
3 In (1,2,4,3,6) True5 In (1,2,3,9) False
Format
- Cú pháp: Format ( x,n)- Trong ó x là s , n ki u nh
ng hi n th s- Ý ngh a: Cho k t qu là shi n th theo ki u nh d ng n(t ng t nh hàm làm tròntrong Excel)
- Format (1234.6455,"#,###.###")= 1,234.646- Format (1234.64558,"#,###.##")= 1,234.65- Format (1234.64558,"#,###.#")= 1,234.6- Format (1234.64558,"#,###")= 1,235
Is Null Cho k t qu là True n u giá tr c a m u tin t i m t tr ng là r ng,ng c l i hàm cho k t qu là False
Is NotNull
Cho k t qu là True n u giá tr c a m u tin t i m t tr ng khôngng, ng c l i hàm cho k t qu là False
4.6. T o truy v n ch n s li u (Select query)Microsoft Access cung c p hai ph ng ti n truy v n:- Truy v n b ng l nh c a ngôn ng SQL.- Truy v n b ng ví d QBE (Query By Example)
Tài li u này chúng ta ch t p trung vào công c truy v n b ng QBE.Ta t o m t Query theo yêu c u nh sau:
Hãy li t kê các khách hàng ã tham gia trong các phi u xu t và tr giá c a t ng phi u óthông tin g m: TENKH, TRGIA, THUE.Ta có c a s thi t k nh sau:
Xem Query k t q a sau khi thi t k
Vùng
ch
a cá
c ta
ble
ngu
nVù
ng l
i QBE
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 35
hai table ngu n HOADON và DMKH (vi c xác nh Table ngu n nào là l thu c vàong câu h i c th ) ta t o ra Query ích tên PHIEUXUAT(TENKH, TRIGIA,
THUESUAT), nhìn vào c a s thi t k ta có các nh n xét sau:Tên Field c a query ích là:
- Tên c a field ngu n, ví d nh : TENKH.- Tên t m i, cách t TENMOI:BIEUTHUC, ( t tên field gi ng nh ph n t tên
trong ph n t o table).Ví d : THUESUAT:[THUE] (THUESUAT là Tên field m i, k n là d u “:”, sau cùnglà bi u th c ch g m 1 field [THUE]).Ta th y field LOAIHD tham gia trong thi t k query làm u ki n cho ta bi t Phi unào là phi u Xu t, nh ng khi xem k t q a thì không hi n c t này là do t i dòng Showta cho n .
4.6.1. Các thành ph n c b n trong Query c a s QBE- Vùng l i QBE: Ch a các tr ng (c t) c a các b ng mà truy v n mu n th
hi n d li u (t ng ng v i các m nh WHERE, ORDER BY, danh sách các c tho c bi u th c mà truy v n mu n hi n th trong câu l nh SELECT). Chi ti t các dòngtrong vùng l i QBE g m có:
Dòng Ý ngh aField Th hi n các field (c t) c a b ng íchTable Tên b ng t ng ng c a c t
Sort Cho phép s p x p th t c t t ng Ascendingho c gi m d n Descending.
Show Hi n ho c n c t này.
CriteriaBi u th c mu n l c trong truy v n. N u ghi u ki n trong cùng
t dòng thì t ng ng toán t logic AND, ng c l i n u ghiu ki n khác dòng nh ng cùng c t thì là toán t logic OR.
- Vùng ch a các b ng ngu n: N i ch a các b ng d li u ngu n cho m t truyn (t ng ng v i m nh FROM trong câu l nh SQL).
4.6.2. T o query ch Design View ây là d ng select query)
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 36
1. c 1: T a sDatabase Click ch n ng nQuery, Click New. Khi ó xu thi n h p h i tho i NewQuery, n ch n DesignView và click OK.2. c 2: Xác nh cáctable/query ngu n.Trong h p tho i Show Table,
n ch n các table/queryngu n và click Add avào vùng ch a các b ng.Click Close óng h p tho iShow Table. Thông th ng
u các b ng ã c t oquan h trong c a s quan hthì khi a vào trong truy v nchúng v n còn gi nguyênquan h này. Tuy nhiên lúcchèn các b ng vào m t truy
n thì có m t s tr ng h pMicrosoft Access t o quan hcho các b ng n u các b ngnày ch a c t o quan htrên c a s quan h bênngoài.3. c 3: T o các field m i cho Query.Ch n các c t s hi n th trong truy v n b ng cách: Kéo chu t c a các c t t
ng xu ng vùng l i QBE ho c D_Click t i c t ó ho c ch n tên c t trongdanh sách các c t t i dòng Field trong vùng l i QBE (xem l i 4.6)4. c 4: Thi t l p các u ki n và thu c tính c a field, query (xem 4.7.3– 4.7.4).
d ng các thành ph n trong vùng l i QBE trên các c t t o truy v n cóp x p d li u (dòng Sort-n u s p x p nhi u dòng s u tiên s p x p t trái
sang ph i); l c d li u (dòng Criteria); hi n th d li u hay không (dòng Show).5. c 5: u query (File\Save).
Thí d :o truy v n hi n th danh sách các hóa n theo th t t ng d n c a s hóa n
và mã khách hàng thu c Kho 3 và Kho 10. Các thông tin hi n th g m có: SOHD (Shóa n), NGAYHD (Ngày hóa n), LOAIHD (Lo i Hóa n), MAKH (Mã khách hàng),TENKH (Tên khách hàng), DIACHIKH a ch khách hàng), MAKHO (Mã kho),TENKHO (Tên kho), DIACHIKHO a ch kho hàng), TRIGIA (Tr giá hóa n).
Query c thi t k theo yêu c u trên ch Design có d ng nh sau:
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 37
Trong ó: Các thông tin cho truy v n này c n có là các c t: SOHD, NGAYHD, LOAIHD ,
TRIGIA m trong b ng HOADON; MAKH, TENKH, DIACHIKH n m trong b ngDMKH; MAKHO, TENKHO, DIACHIKHO n m trong b ng DMKHO. Trong thí d trên c t MAKHO s d ng so sánh l c ra các hóa n thu c
Kho 3 (KH3) và Kho 10 (KH10) (chúng ta ghi trên hai dòng khác nhau t o ratoán t OR).
u ý:- Thông th ng khi m t c t xu t hi n trong vùng l i QBE mà không hi n th ra
ngoài thì nó ch c s d ng v i hai m c ích: S p x p d li u ho c ghi u ki n l c li u cho truy v n.
- Ký t sao (*) i di n cho t t c các c t trong m t b ng.4.7. M t s thao tác trên Query4.7.1. M t s thao tác c b na. Xem tr c k t qu và th c hi n m t Query
Xem tr c k t qu : Click nút Datasheet View ho c vào View\DatasheetView.
Th c hi n truy v n: Click nút Run ho c vào Query\Run.u ý:
Nên xem tr c k t qu truy v n tr c khi cho th c hi n truy v n i v i các lo itruy v n (action query) làm thay i giá tr d li u nh : Update Query, AppendQuery, Delete Query, Make - Table Query.
u mu n quay l i ch thi t k khi ang ch y ho c xem tr c k t qu m ttruy v n, b n click nút Design View ho c vào View\Design View.
b. Thêm ho c xóa các b ng trong khi t o Query b ng QBETrong quá trình th c hi n m t Query, n u c n l y thông tin c a các c t trên m t
ng nào ó mà b ng này l i ch a c chèn vào vùng ch a các b ng c a truy v nQBE thì chúng ta ph i chèn thêm b ng ó vào. Ng c l i, n u m t b ng n m trong vùngch a các b ng c a truy v n mà không có s d ng n a (truy v n không c n n thôngtin c a b ng này) thì chúng ta s lo i b nó ra kh i truy v n.
Thêm b ng1. Trong c a s thi t k QBE ta m h p tho i Show Table: Click vào nút Show
Table ; ho c click ph i vào vùng ch a các b ng và ch n Show Table; ho c vàoQuery\Show Table.
2. a các table (b ng) c n thêm vào (xem 4.6.2).
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 38
Xóa m t b ng trong truy v n:- Cách 1: Ch n b ng mu n xóa r i nh n phím Delete ho c ch n Query\Remove
Table.- Cách 2: Click ph i vào b ng mu n xóa, ch n Remove Table.
c. Chèn thêm dòng tên b ng (Table) vào vùng l i QBEôi khi m t truy v n òi h i ph i c n d li u trên nhi u b ng khác nhau. Tuy
nhiên, gi a các b ng này có th có các c t trùng tên nhau. Do ó, th y c c t thhi n trên vùng l i QBE là c a b ng nào thì chúng ta nên chèn dòng tên b ng (Table)vào vùng l i QBE.
Cách hi n/ n c t Table: View\Table Names ho c click ph i vào vùng l i, ch nTable Names.d. Chèn thêm c t vào vùng l i QBE: Insert\Columns
Trong quá trình t o Query, có th mu n chèn thêm m t c t m i n m tr c c thi n hành ho c có th hi n t i trong vùng l i QBE không còn m t c t tr ng nào t othêm các c t m i cho truy v n thì chúng ta ph i th c hi n chèn thêm m t c t vào truy
n.e. Xóa c t trong vùng l i QBE
Ch n c t c n xóa r i nh n phím Delete ho c vào Edit\Delete.4.7.2. T o các c t tính toán c ho c m t bi u th c trong truy v n.
Trong m t truy v n ngoài th hi n các c t d li u s n có trong các b ng, chúng tacòn có th t o các c t m i c tính toán t các c t có s n b ng cách xây d ng cácbi u th c tính toán.
Các toán t : +, -, *, /,.. và các hàm tính toán: YEAR, MONTH, DATE, DAY, IIF,…c dùng xây d ng các bi u th c c n thi t.
Ví d : T o query th hi n các hóa n v i các thông tin: S hóa n, Ngày hóan, Lo i Hóa n, Tháng l p hóa n (không hi n th ngày và n m).
Query ch Design View: (d li u ngu n l y t b ng HOADON)
Xây d ng Calculated Field: t con tr t i c t mu n t o Calculated Field. Sauó nh p bi u th c vào theo m t trong các cách sau:
- Cách 1: Nh p bi u th c vào v trícon tr- Cách 2: Dùng công c ExpressionBuilder: R_Click ch n Build, ho c
Click nút Build ho c nh nCtrl+F2 m h p tho iExpression Builder.bi u th c tính toán có liên quan nField c a table ngu n thì ta ghi nhsau:[TÊN_TABLE]![TÊN_FIELD]Sau ó nh p bi u th c vào khung tr ng và click OK sau khi nh p xong.
n có th chèn các Field, Controlu khi n), hàm (Function), h ng
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 39
(Constants),... có s n vào bi u th cng cách hi n th các i t ng
mu n chèn và click úp vào nó.
u ý:- cho Query có th hi n th k t qu ngay lúc ch n, t t c nh ng thành ph n
trong bi u th c (ch ng h n nh Field) ph i có m t trong các Table ho c Query tham giaQuery hi n t i. (Ví d : Tháng hóa n: Month( [HOADON]![NGAYHD] ): Ta tham chi u
n tr ng NGAYHD trong Table HOADON tuy nhiên ta có th b tên c a table[HOADON] (n u nh trong table ngu n có 2 field [NGAYHD] n m trên 2 table khác nhauthì b t bu c ta ph i vi t tên Table [HOADON] kèm theo).
- N u b n s d ng m t tr ng (Field) ho c u khi n (Control) nào ó t Formho c Report thì b n ph i thi hành Form ho c Report ó tr c, n u không Query s hi u
ó nh là m t bi n tham s và b n ph i nh p giá tr cho tham s này khi thi hành query. d ng d ng này trong tr ng h p t Form b n truy n nh ng giá tr m t u khi n
(Control) nào ó cho Query.4.7.3. M t s thu c tính c a c t trong Query
Thông th ng khi ta s d ng bi u th c tính toán c (Calculated Field) trongQuery, ôi khi giá tr th hi n không úng nh ta mong mu n, thay i l i cách hi nth ta ph i quy nh l i thu c tính c a chúng. B c làm nh sau:
- t con tr t i c t mu n t thu c tính.- View \Properties ho c R_Click ch n Properties ho c Click bi u t ng trênthanh công c Query Design.- Trong h p tho i Field Properties, t l i thu c tính cho c t (n u c n), bao g m: + Description: Mô t c t. + Format: nh d ng d ng d li u th hi n trong c t. + Input Mask: M t n nh p li u.
+ Caption: Tiêu c t (xu t hi n ch Datasheet View ho c Run).Ví d : Mu n th hi n c t NGAYHD trong Query theo d ng mm/dd/yyyy (tháng
/ngày /n m) và tiêu c t là Ngày hóa n thì chúng ta nh d ng thu c tínhFormat t i c t này nh sau:
4.7.4. Thu c tính c a Query. qui nh l i thu c tính c a Query, R_Click vào vùng tr ng trong c a s thi t k
Query và ch n Properties.
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 40
Ý ngh a c a m t s thu c tính nh sau:- Top Values: T ng s record s c
hi n th khi thi hành Query.- Unique Values: Có hai l a ch n:
+ Yes: N u có nhi u giá tr trùng nhauthì s hi n th m t giá tr duy nh t.
+ No: Hi n th t t c các giá tr- Unique Records: Có hai l a ch n:
+ Yes: N u có nhi u record trùng nhauthì s hi n th m t record duy nh t.
+ No: Hi n th t t c các recordChú ý: Hai thu c tính Unique Values và
Unique Records không th ng th i là Yes.
4.7.5. Quy nh thu c tính liên k t trong các Table/Query tham gia Query.Trong m t s tr ng h p hi n th k t qu c a Query theo úng nh nhu c u
a b n, ngoài vi c nh thu c tính liên k t (Join Properties) trong c a s liên k t(Relationships), b n có th nh l i thu c tính liên k t gi a các Table ho c Query thamgia truy v n. B c làm nh sau:
- R_Click vào s i dây liên k t mu n thay i và ch n Join Properties ho c D_Clickvào s i dây liên k t. S xu t hi n h p h i tho i Join Properties g m 3 l a ch n:
a ch n 1: Ch n l a này ch l y nh ng record có li u c a vùng liên k t c hai Table.
a ch n 2: Table bên trái l y h t các record, Table bên ph i ch l y nh ngrecord mà li u c a vùng liên k t có m t trong Table bên trái.
a ch n 3: Table bên ph i l y h t các record, Table bên trái ch l y nh ngrecord mà li u c a vùng liên k t có m t trong Table bên ph i.
- Ch n Option mong mu n và click OK.Ví d : Trong h p tho i trên, n u b n ch n 1 thì s hi n th nh ng Kho hàng cùng
xu t hi n c 2 table DMKHO và HOADON, n u ch n 2 lúc này s hi n th t t cnh ng kho có trong Table DMKHO và nh ng kho có liên quan trong Table HOADON,
u ch n 3 thì s hi n th t t c nh ng kho trong Table HOADON và nh ng kho bênTable DMKHO có liên quan.4.7.6. L u Query: Th c hi n t ng t nh i v i TableTóm l i: t c nh ng ph n v a trình bày trên u n m trong khuôn kh c a vi c thi t
m t Select Query. N u b n thi t k t c m t Select Query hoàn ch nh thì b n s d
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 41
dàng chuy n chúng thành nh ng d ng Query khác (Update Query, Append Query,Delete Query, Make - Table Query).4.8. Truy v n nhóm d li u (Group)
4.8.1. Ý ngh a d ng truy v n tính toán d li u theo t ng nhóm có tính ch t t ng c ng,
th ng kê t ng h p s li u mà không quan tâm n chi ti t s li u bên trong c a t ngdòng.
4.8.2. Các b c th c hi n:- B n thi t k t tr c m t Select Query- View \Totals ho c R_Click vào vùng l i QBE ch n Totals ho c bi u t ng
trên thanh công c Query Design (khi ó trong vùng l i QBE có thêm dòng Total).- S d ng các hàm tính toán t i dòng Totals th c hi n các phép toán cho các
t trong truy v n.Hàm Ý ngh a
Group By Nhóm d li u trên các c tAvg Tính trung bình c ng cho các c t có ki u d li u sSum Tính t ng các c t có ki u d li u sCount m s giá tr khác r ngMin Tìm giá tr nh nh tMax Tìm giá tr l n nh tFirst Tìm giá tr u tiênLast Tìm giá tr cu i cùngExpression Bi u th c tính toán t các c t d li u khác trong b ngWhere u ki n l c d li u cho truy v n
Ví d :- Yêu c u: T o query tính t ng tr giá c a các hóa n nh p và xu t m i kho
hàng.- Query ch Design View:
- K t qu th c hi n:
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 42
Trong ví d trên t i c t MAKHO, TENKHO, LOAIHD ta s d ng m nh GroupBy trong dòng Total nhóm d li u theo MAKHO, TENKHO, LOAIHD và c t Tong TriGia s d ng hàm Sum trong dòng Total tính t ng tr giá c a các hóa n xu t ho cnh p trong cùng t kho.Chú ý:
- Th ng trong truy v n nhóm tiêu c a các c t th c hi n phép tính: Sum,Count, First, ... s do Microsoft Access t o ra v i tên là Sumof, Countof, ... thay itên, ta có hai cách: (1) Ghi tiêu m i ngay trên c t ( ví d trên TONG TRI GIA ) ho c(2) Ghi vào thu c tính tiêu (Caption) c a c t trong b ng thu c tính c a c t.
- N u trên dòng Field ta có s d ng m t s hàm nào ó ch ng h n nh : SUM, IIF,... thì t i dòng Total t ng ng c a ta ph i ch n là Expression.
- N u m t c t nào ó có s d ng u ki n trong dòng Criteria thì dòng Total t ngng ph i là Where và không cho hi n th k t qu (t t d u t i dòng Show)
4.9. T o các Query hành ng (Action Query)u ý: i v i các Query hành ng là lo i query làm thay i d li u c a table
ngu n b n nên xem tr c k t qu và sau ó m i cho thi hành th c s lo i query này cót q a khi ta ti n hành Run
4.9.1. Update Query (Query c p nh t s li u)Trong quá trình nh p li u, vi c thay i s li u là u không th tránh kh i. Vi c
thay i d li u cho m t hay hai record thì u này ta không quan tâm cho l m nh ngu chúng ta thay i ng lo t hàng tr m ho c hàng ngàn record thì công vi c này th t
n th i gian và r t d x y ra sai sót. Chính vì lý do ó ta dùng Update Query thay i li u ng lo t trên m t hay nhi u Table.
i v i Update Query b n có th :- Gi i h n s thay i giá tr m t s record nào ó b ng cách ch nh t i dòng
u ki n (Criteria).- L y d li u t m t b ng khác (t t c các b ng c n d li u ph i có m t trong truy
n)o Update Query:
1. Trong ng n Query, click vào New ho c vào Insert\Query và ch n Design View.2. Ch n b ng có d li u c n c p nh t.3. Query \Update Query.Lúc này vùng l i QBE i khác i: (1) M t dòng Sort và dòng Show và (2) Xu t
hi n dòng Update To. Vi c thay i giá tr c a m t Field nào ó b ng cách ch n Fieldtrên dòng Field và giá tr m i c thay th c ch nh t i dòng Update To. Ngoài ra
n có th gi i h n vi c c p nh t b ng cách t u ki n t i dòng Criteria.
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 43
Ví d 1: C p nh ttr ng DIENGIAIHD trongtable HOADON thànhHóa n Nh p hay Hóa
n Xu t tùy thu c vàolo i hóa n là Nh p hayXu t.
Ví d 2: C p nh t tr ng TRIGIATANG trong Table HOADON b ng 1.1*TRIGIAi v i các hóa n xu t trong tháng 01 n m 1999.
4.9.2. Delete Query (Query xóa s li u) d ng lo i Query này khi ta mu n xóa nhi u dòng trong m t hay nhi u b ng th a
mãn u ki n a ra. B n ph i c n th n v i lo i Query này vì d li u không th ph ci l i c sau khi xóa.
o Delete Query:1. Th c hi n nh select query tuy nhiên thêm các thao tác sau.2. Vào Query \Delete Query. Màn hình thi t k Delete Query c ng t ng t nh
Select Query nh ng có thêm dòng Delete.3. L n l t rê các tr ng sau vào vùng l i:
- Tr ng có d u * b ng có m u tin c n xóa. Dòng Delete c a c t này sxu t hi n t From.
- Các tr ng dùng l p u ki n l c. T Where s xu t hi n trong dòngDelete c a các tr ng này.
4. Chuy n sang ch Datasheet View xem tr c các m u tin s b xóa tr ckhi th c hi n Query xóa các m u tin này.
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 44
Ví d : Xóa nh ng khách hàngcó a ch C n Th t b ngDMKH.
Chú ý:- N u nh ng Table liên k t v i nhau theo quan h m t - nhi u (One - To - Many) và
có qui nh thu c tính Cascade Delete Related Records thì khi b n xóa nh ng Recordbên u One thì t t c nh ng Record có quan h bên u Many s b xóa. B n ph i th t
n th n v i thao tác này vì khi nh ng Record b xóa thì không th c ph c h i và vi cxóa này c th c hi n m t cách t ng và không có m t s c nh báo nào.
- T t c nh ng Table/Query tham gia trong Delete Query ph i c liên k t v inhau. N u chúng ch a c liên k t v i nhau thì b n có th t o liên k t gi a chúng ngaytrong c a s thi t k Query.4.9.3. Append Query (Query n i s li u)
Là lo i query c dùng thêm d li u vào m t b ng. D li u c thêm vào cóth c l y t m t b ng khác ho c c nh p tr c ti p t bàn phím khi thi hành query.
o Append Query:1. Trong ng n Query, Click vào New ho c Insert\Query, ch n ti p Design View.2. N u c n l y d li u t m t b ng có s n thì b n thêm vào t h p tho i Show
Table, n u không b n óng h p tho i Show Table l i và sang b c k ti p.3. Ch n Query\Append Query m h p tho i Append. Trong h p tho i này, b n
ch table c n n i thêm s li u và click OK.
4. Khi ó trong vùng l i QBE xu t hi n thêm dòng Append To. Trong vùng l i,n t các tr ng; ho c các giá tr ; ho c bi n tham s mu n thêm vào t i dòng Field và
các tr ng mu n thêm s li u t i dòng Append To.+ N u b n ghi giá tr c th thì khi thi hành Query nó s nh n giá tr ó, lúc nào
ó b n mu n thêm giá tr khác thì b n ph i nh p l i giá tr m i. Cách này th ng khôngc s d ng.
+ N n b n s d ng bi n tham s thì khi thi hành Query thì nó s yêu c u b nnh p giá tr vào và nh ng giá tr này s c n i vào Field c ch nh trong dòngAppend To t ng ng.
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 45
+ N u b n s d ng m t tr ng nào ó c a Table ngu n thì Microsoft Access l y d li u ngu n ó m i khi b n cho thi hành Query.
Ví d : o query thêm m t kho có mã kho là “KH11”, tên kho là “Kho 11” và a chkho là 140 - Lý T Tr ng - C n Th . Các giá tr này c nh p t bàn phím.
Query ch thi t k :
Chú ý: - B ng d li u ngu n (n u có) ph i có m t danh sách các b ng tham gia truy v n.- Giá tr c a khóa chính ho c nh ng tr ng có quy nh thu c tính Indexed là
Yes, No Duplicate thì d li u trùng l p s không c n i vào b ng.
4.9.4. Make-Table Query (Query t o b ng) d ng khi mu n sao chép c u trúc và/ho c d li u t m t ho c nhi u Table sang
t Table khác.o Make - Table - Query:
1. T o m t Select Query hoàn ch nh ch a các d li u c n thi t t o ra b ng m i.2. Vào Query\Make-Table Query.
3. Nh p tên b ng m i vào ô Table Name c a h p tho i Make-Table và click OK.Ví d : T o b ng m i có tên KHACHHANG_CTA t b ng DMKH ch ch a các
khách hàng có mã khách hàng b t u b ng “CTA”.ng d n: T o m t Select query ch a y thông tin v các khách hàng có
mã khách hàng b t u b ng “CTA” r i th c hi n b c 2 và 3 trên.4.10. Crosstab Query (Query tham chi u chéo)
d ng d ng Query này khi mu n th ng kê và trình bày các d li u theo d ng tómt nh th ng kê tr giá m i lo i hóa n c a t ng kho, th ng kê t ng s hóa n
xu t/nh p c a t ng kho,…Ví d : o query th ng kê tr giá c a m i lo i hóa n nh p xu t trên t ng kho.
li u ngu n: Table HOADON.4.10.1. T o Crosstab Query b ng Wizard
B1- Trong ng n Query, b n Click New,ch n Crosstab Query Wizard và click OK.
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 46
B2- Ch n Table tham gia query(HOADON) và click Next.
B3- Ch n field làm tiêu dòng(row heading) và click Next: B n ch nfield MAKHO và Click nút > a quaSelected Fields, b n có th lo i b field
ã c ch n b ng cách ch n chúng vàClick nút <.
B4- Ch n field làm tiêu t (column heading) và click
Next: B n ch n Field LOAIHDtheo cách t ng t nh b c 3.
B5- Ch n field và hàmmu n th c hi n th ng kê và clickNext: Ch n SOHD và hàm Count
m SOHD.Tùy theo ki u d li u c a tr ngmu n th ng kê b n có th ch n
t trong s các hàm nh : Tínhng (sum), tính trung bình (avg),m (count), l y tr l n nh t/nh
nh t (max/min),…
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 47
B6- t tên cho Query, ch n ch m query là xem k t qu (View the
query) ho c thi t k l i (Modify thedesign) và click Finish.
- Khi th c thi Query b n ct qu nh sau:
MAKHO Total Of SOHD NH P XU TKH1 4 2 2KH10 3 3KH2 1 1KH3 4 2 2KH4 2 2KH5 3 1 2KH7 1 1KH8 1 1
4.10.2.Crosstab Query b ng Design
* ch thi t k ,crosstab query c t o
ng Wizard trên có d ngnh sau:
* t o m t crosstab query theo cách t thi t k , b n th c hi n nh sau:B1: Ch n ng n Query, ch n New, ch n Design view i click OK.B2: a table/query ch a d li u ngu n vào vùng ch a table/query. Trong ví d trênlà b ng HOADON.B3: a các tr ng làm tiêu c t, tiêu dòng và th ng kê vào vùng l i c aquery. Trong vi d trên là MAKHO, LOAIHD và SOHD.B4: Vào Query\Crosstab Query. Lúc này, xu t hi n thêm dòng Crosstab và Totalvùng l i c a query. Trên dòng Crosstab b n ch n Row heading cho tr ng làmtiêu dòng, Column heading cho tr ng làm tiêu c t và Value trên tr ng
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 48
mu n th ng kê. Trên dòng Total, b n ch n Group By cho tr ng làm tiêu c t vàdòng, và ch n hàm dùng th ng kê cho tr ng th ng kê.* u mu n t o thêm c t trong crosstab query (ví d : m t ng s hóa n nh pvà xu t trên m i kho), b n t o thêm m t c t (ví d : TongSoHD: SOHD) vào vùng
i, ch n hàm dùng th ng kê trên dòng Total (gi ng nh hàm trên dòng Totala c t th ng kê) và ch n Row heading trên dòng Crosstab c a c t này.
u ý:1. Crosstab Query Wizard ch l y d li u t m t Table/Query. Do ó n u mu n l y dli u t nhi u table/query, b n ph i ch n cách t thi t k .2. Trong m t crosstab query, b n có th ch n nhi u c t làm tiêu dòng nh ng ch
c phép ch n m t c t làm tiêu c t và m t c t dùng th ng kê.3. Không th truy n tham s cho m t Crosstab Query. N u mu n s d ng thông s choCrosstab Query, ta ph i t o m t Select Query trung gian có ch a thông s c n truy n.4.11. S d ng tham s trong truy v n4.11.1. Ý ngh a s d ng tham s :
Tham s trong truy v n dùng th c hi n các truy v n theo m t u ki n " ng"nào ó. u ki n này có th là:
M t bi n tham s mà giá tr c a nó s c nh p vào t bàn phím khi truyn c th c hi n.
Ho c là giá tr c a m t u khi n (control) n m trên m t bi u m u ang m ch c p nh t d li u.
Thí d : Th hi n t t c các hóa n nh p và xu t hàng c a m t kho b t k nàoó mà khi th c hi n truy v n ng i s d ng s nh p vào m t mã kho t ng ng mu n
xem.Nh n xét: Truy v n này s có tham s vào là m t mã kho (có ki u d li u chu i)
và tham s này ph i t t i dòng u ki n so sánh (Criteria) c t mã kho. T ó cóth l c ra các hóa n c a các kho hàng t ng ng có trong b ng hóa n.4.11.2. S d ng bi n tham s trong truy v n
1. T o query v i y các thông tin theo yêuu.
2. Vào menu Query\Parameters m h p tho iQuery Parameters.3. Nh p bi n tham s vào c t Parameter và ch nki u d li u thích h p cho tham s trong c t DataType. Ki u d li u này ph i gi ng v i ki u d li u
a c t trong b ng c n so sánh. Trong thí d trênchúng ta t o ra m t tham s có tên là Nh p MãKho có ki u d li u là chu i. L p l i b c này n umu n t o thêm các thông s khác.4. Nh p tên tham s gi a 2 d u ngo c vuôngvào dòng u ki n (criteria) t i c t mu n so sánhtrong vùng l i.
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 49
5. L u query và ch y th . Khi th c hi n, access hi n th h p tho i Enter Parameter Value
ng i dùng nh p giá tr cho bi n tham s .
Ví d : màn hình ch thi t k c a query có s d ng tham s theo yêu c u c a ví dtrên nh sau:
4.11.3. Tham s c a truy v n nh n t Form th c thi Queryi v i lo i truy v n này, b n ch c n a tham s vào dòng u ki n c a c t
mu n so sánh theo cú pháp: [Forms].[Tên Form]![Tên u khi n]. Giá tr c a ukhi n (control) c ch nh n m trên m t bi u m u ang m ch c p nh t d li u
là tham s cho truy v n khi th c thi.Ví d : o query li t kê nh ng hóa n phát sinh trong kho ng th i gian c qui
nh trong 2 textbox Tungay và Denngay c a Form F_Hoadon ang m .Query theo yêu c u trên có th c thi t k nh sau:
Trong ó bi u th c so sánh trên dòng u ki n c a c t NGAYHD là:Between [Forms].[F_HOADON]![Tungay] And [Forms].[F_HOADON]![Denngay]4.12.Truy v n con4.12.1. Khái ni m:
Truy v n con (subquery) là m t truy v n ch n l a c dùng nh m t u ki nbên trong m t truy v n ch n l a hay truy v n hành ng khác.4.12.2. Cách t o truy v n con
1. T o truy v n con trong cùng nh t, ch y và xem k t qu .
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 50
2. Vào menu View\SQL View, sao chép n i dung câu l nh SQL c a truy v ncon.
3. T o truy v n cha.4. Dán câu l nh SQL sao chép b c 2 vào dòng u ki n c a m t c t trong
truy v n cha. Câu l nh này n m phía sau m t trong các phép toán t so sánhnh : Not, in, >, <,… và c t trong c p d u ngo c.
* Trình t th c hi n m t truy v n có ch a truy v n con: Truy v n bên trong c pu ngo c n c p th p nh t s c th c hi n tr c tiên, sau ó l y k t qua truy v n con này th c hi n vi c so sánh v i truy v n cha bên ngoài. C
th các truy v n s l n l t c th c hi n t trong ra ngoài.4.12.3. Thí d v truy v n con
o truy v n th hi n các kho trong b ng danh m c kho ch a tham gia nh p xu thàng hóa.
Nh n xét: làm c truy v n này, chúng ta t o ra hai truy v n nh m tìm cácp h p sau:
1. T p h p danh sách các kho ang có trong danh m c kho.2. T p h p danh sách các kho ã tham gia nh p xu t hàng hóa.
So sánh gi a hai t p h p này tìm ra nh ng kho có bên t p h p các kho hi nang có nh ng không t n t i bên t p h p các kho ã tham gia nh p xu t hàng hóa.
Chúng ta th y r ng truy v n tìm danh sách các kho ã tham gia nh p xu t hànghóa s ph i c th c hi n tr c l y k t qu em so sánh v i danh sách các kho
ang có. Do ó truy v n tìm danh sách các kho ã tham gia nh p xu t hàng hóa làtruy v n con ( c th c hi n tr c) và truy v n tim danh sách các kho ang có làtruy v n cha ( c th c hi n sau).
Các b c th c hi n:
1. T o truy v n con tìm danhsách kho ã tham gia nh pxu t hàng hóa .
2. i dung câu l nh SQL:SELECT HOADON.MAKHOFROM HOADON;
Microsoft Access 2000 Ch-¬ng 4: Query
Trung t©m Tin häc Trang 51
3. o truy v n cha: Tìm danhsách kho ang có trong danh
c kho.4. Nh p bi u th c: Not In(SELECT HOADON.MAKHOFROM HOADON;) vào dòng
u ki n c a c t MAKHO trongtruy v n cha. Trong ó: Toán tNot in c dùng ch n cácph n t trong m t t p h pkhông có trong m t t p h pkhác, và câu l nh SQL trongngo c chính là câu l nh ã saochép b c 2.
u ý: S c t tr v c a truy v n con gi c ng là m t c t.