Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Chuong 04 query

2,239 views

Published on

  • Be the first to comment

  • Be the first to like this

Chuong 04 query

  1. 1. Microsoft Access 2000 Ch-¬ng 4: Query Ch ng IV: QUERY-TRUY V N D LI U 4.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 ng thô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 s li 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 khi nhì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. Khi cho th c hi n m t Query, Microsoft Access thu th p các s li u t các Table khác nhau nh m áp ng yêu c u v n tin c a b n, trong m t n v g i là “dynaset” (dynamic dataset) 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 u hi 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 tin a 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 n n 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ái ch c. 4.2. Các lo i Query thông d ng 4.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 t hay nhi u Table và hi n th k t qu trong m t datasheet và ó b n có th c p nh t record 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 s phé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ình ng 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 n có 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óa các record này kh i các Table hi n hành. 4.2.6. CrossTab Query (Query tham chi u chéo). Trung t©m Tin häc Trang 28
  2. 2. Microsoft Access 2000 Ch-¬ng 4: Query 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 ng tí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 s cho 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 ng sau khi thi t k Query b ng Query Wizard b n ph i chuy n sang ch Design View thi 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á tr thông s t o ra k t qu tùy theo thông s ó thì g i là Parameter Query. Các Query dùng vào b t k m c ích nào (nh Select Query, Append Query, Delete Query,...) n u có 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 gian nà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ên mà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 t t 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: Khi ch y Query, Microsoft Access rút trích các m u tin th a mãn u ki n quy nh ..và hi n th theo th t ch nh 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 i là “Pavlova, Ltd” ho c “Exotic Liquids”: Trung t©m Tin häc Trang 29
  3. 3. Microsoft Access 2000 Ch-¬ng 4: Query Danh sách các Field liên h c a các b ng trên Table hay Query. th hi n qua m i n i. T o query b ng cách ch n table và/ho c query, xác nh m i liên h , ch n field t danh sách, ch nh cách p x p, a ra tiêu chu n ch n l a. Các Field ch n, cách p x p th t và tiêu chu n. Ch n field b ng cách rê t danh sách và th vào l i thi t k . 4.4.2. CrossTab Query cho bi t các tr t ng h p s li u (t ng tr , Select Query l t, s trung bình, tr cao nh t hay th p nh t,...) Ví d bên c nh là k t qu c a m t CrossTab Query i chi u v i m t Select Query, nó t p h p 3 dòng Buchanan thành m t dòng, 3 dòng Callahan thành m t dòng CrossTab Query Ví d 1: M t Crosstab Query giai n thi t k và k t qu : Ch nh các t p h p i m c này. T p h p theo c ích p h p theo c t dòng ph p 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: Trung t©m Tin häc Trang 30
  4. 4. Microsoft Access 2000 Ch-¬ng 4: Query 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 tham chi u chéo d ng Pivot Table theo hàng và c t. 4.5. CÁC THÀNH PH N C B N TRONG TRUY V N 4.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 c và 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 c vuô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 ng ng 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 n tr 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 n tham s c nh p vào t bàn phím. Ví d : Trong Query có ch a bi n tham s và khi thi hành Query này thì Microsoft Access hi n th lên h p h i tho i “Enter Parameter Value” 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 Enter Parameter Value ta nh p giá tr cho bi n. Trung t©m Tin häc Trang 31
  5. 5. Microsoft Access 2000 Ch-¬ng 4: Query 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 y trong tr ng h p ta mu n báo cho Microsoft Access hi u giá tr mà ta nh p vào thu c ki u d li u khác thì ta ph i quy nh l i. Trình t làm nh sau: 1. R_Click vào vùng thi t k ch n Parameter ho c vào menu QueryParameter. 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 ng thì bi u th c logic c dùng làm u ki n trong vùng Criteria 2. 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ào dò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. Do y, 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 Wh* t ng ng v i * i di n cho m t s ký t b t k . what, white, và why,.. B?ll t ng ng v i ? i di n cho m t ký t b t k ball, bell, và bill B[ae]ll t ng ng v i i di n cho m t ký t xu t hi n trong [] ball và bell nh ng không p d u ngo c [] th là bill B[!Ae]ll t ng ng v i i di n cho m t ký t b t k không xu t [!] bill và bull nh ng không hi n sau d u ! th là bell i di n cho m t ký t trong kho ng. B n B[a-c]d t ng ng v i - ch nh vùng theo th t t ng d n (t A bad, bbd, và bcd n Z nh ng không th t Z n A) 1#3 T ng ng v i # i di n cho m t s 103, 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 d li 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 c nh 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ý Trung t©m Tin häc Trang 32
  6. 6. Microsoft Access 2000 Ch-¬ng 4: Query 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úc nà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 72 = 3 Mod Chia l y ph n d 7 mod 2 = 1 2. Toán t logic Toá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 Cú pháp: BT1 AND BT2 AND .. (1>3) And (2<8): False - V i BT1, BT2,… là các bi u th c logic. (1<3) And (9>7): True AND - Ý ngh a: Cho k t qu là True n u t t c các bi u th c logic BT1, BT2, ... là True, ng c l i hàm cho k t qu là False. Cú pháp: BT1 OR BT2 OR BT3 OR ... (1>3) Or (2<8): False - V i BT1, BT2, .... là các bi u th c logic. (1<3) or (9>7): True OR - Ý 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. - Cú pháp: Not BT Not (3>9)=True NOT - Ý ngh a: Cho k t qu là True n u BT có Not ((2>1) And (1<9))=False giá tr False, và ng c l i. 3. Toán t logic Toán t Cú pháp - Ý ngh a Ví d “C S ” & “ Tin H c” & “ 39 ng & Ghép chu i 3/2” ( “C S Tin H c 39 ng 3/2” - Cú pháp: <BT> Like <m u> "aBBBa" Like "a*a" True - Trong ó: BT: Bi u th c "F" Like "[A-Z]" True chu i; <m u>: Là m t chu i ký "F" Like "[!A-Z]" False. có th bao g m c ký t i "a2a" Like "a#a" True. Like di n. "aM5b" Like "a[L-P]#[!c-e]" - Ý ngh a: Cho k t qu là True. True n u <BT> tho mãn "BAT123khg" Like "B?T*" True. <m u>, ng c l i cho k t qu "CAT123khg" Like "B?T* False False Cú pháp: 4 Between 2 And 9 True <BT> Between GT1 And GT2 10 Between 1 And 3 False - Trong ó: BT là bi u th c, #08/10/1977# Between GT1, GT2 là các giá tr #01/10/1977# And #05/06/1979# Between - Ý ngh a: Cho k t qu là True True n u giá tr c a BT n m trong kho ng GT1 n GT2, ng c l i cho k t qu là False Trung t©m Tin häc Trang 33
  7. 7. Microsoft Access 2000 Ch-¬ng 4: Query Cú pháp: 3 In (1,2,4,3,6) True - BT in(GT1, GT2, GT3,....) 5 In (1,2,3,9) False - Trong ó: BT là bi u th c, GT1, GT2 là các giá tr . In - Ý ngh a: Cho k t qu là True u giá tr c a BT n m trong kho ng các giá tr GT1, GT2, GT3,.., ng c l i hàm cho k t qu là False - Cú pháp: Format ( x,n) - Format (1234.6455,"#,###.###")= 1,234.646 - Trong ó x là s , n ki u nh - Format (1234.64558,"#,###.##")= 1,234.65 ng hi n th s - Format (1234.64558,"#,###.#")= 1,234.6 Format - Ý ngh a: Cho k t qu là s - Format (1234.64558,"#,###")= 1,235 hi n th theo ki u nh d ng n (t ng t nh hàm làm tròn trong Excel) Cho k t qu là True n u giá tr c a m u tin t i m t tr ng là r ng, Is Null ng c l i hàm cho k t qu là False Is Not Cho k t qu là True n u giá tr c a m u tin t i m t tr ng không Null ng, 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: Vùng ch a các table ngu n i QBE Vùng l Xem Query k t q a sau khi thi t k Trung t©m Tin häc Trang 34
  8. 8. Microsoft Access 2000 Ch-¬ng 4: Query hai table ngu n HOADON và DMKH (vi c xác nh Table ngu n nào là l thu c vào ng 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ùng là 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 u nà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 Show ta 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 t ho 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òng trong vùng l i QBE g m có: Dòng Ý ngh a Field Th hi n các field (c t) c a b ng ích Table Tên b ng t ng ng c a c t Cho phép s p x p th t c t t ng Ascending Sort ho c gi m d n Descending. Show Hi n ho c n c t này. Bi u th c mu n l c trong truy v n. N u ghi u ki n trong cùng Criteria t dòng thì t ng ng toán t logic AND, ng c l i n u ghi u 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 truy n (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) Trung t©m Tin häc Trang 35
  9. 9. Microsoft Access 2000 Ch-¬ng 4: Query 1. c 1: T a s Database Click ch n ng n Query, Click New. Khi ó xu t hi n h p h i tho i New Query, n ch n Design View và click OK. 2. c 2: Xác nh các table/query ngu n. Trong h p tho i Show Table, n ch n các table/query ngu n và click Add a vào vùng ch a các b ng. Click Close óng h p tho i Show Table. Thông th ng u các b ng ã c t o quan h trong c a s quan h thì khi a vào trong truy v n chúng v n còn gi nguyên quan h này. Tuy nhiên lúc chèn các b ng vào m t truy n thì có m t s tr ng h p Microsoft Access t o quan h cho các b ng n u các b ng này ch a c t o quan h trên c a s quan h bên ngoà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 trong danh 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 (FileSave). 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 (S hó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: Trung t©m Tin häc Trang 36
  10. 10. Microsoft Access 2000 Ch-¬ng 4: Query 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 ng DMKH; 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 ra toá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 Query 4.7.1. M t s thao tác c b n a. 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 ViewDatasheet View. Th c hi n truy v n: Click nút Run ho c vào QueryRun. 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 i truy v n (action query) làm thay i giá tr d li u nh : Update Query, Append Query, 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 t truy v n, b n click nút Design View ho c vào ViewDesign View. b. Thêm ho c xóa các b ng trong khi t o Query b ng QBE Trong 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 n QBE 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ùng ch 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ông tin c a b ng này) thì chúng ta s lo i b nó ra kh i truy v n. Thêm b ng 1. 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ào QueryShow Table. 2. a các table (b ng) c n thêm vào (xem 4.6.2). Trung t©m Tin häc Trang 37
  11. 11. Microsoft Access 2000 Ch-¬ng 4: Query 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 QueryRemove 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 th hi 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: ViewTable Names ho c click ph i vào vùng l i, ch n Table Names. d. Chèn thêm c t vào vùng l i QBE: InsertColumns 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 t hi 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 o thê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 EditDelete. 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 ta cò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ác bi 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óa n, 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 Expression Builder: R_Click ch n Build, ho c Click nút Build ho c nh n Ctrl+F2 m h p tho i Expression Builder. bi u th c tính toán có liên quan n Field c a table ngu n thì ta ghi nh sau: [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, Control u khi n), hàm (Function), h ng Trung t©m Tin häc Trang 38
  12. 12. Microsoft Access 2000 Ch-¬ng 4: Query (Constants),... có s n vào bi u th c ng 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 gia Query 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 nhau thì 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 Form ho 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) trong Query, ôi khi giá tr th hi n không úng nh ta mong mu n, thay i l i cách hi n th 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ên thanh 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ính Format 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. Trung t©m Tin häc Trang 39
  13. 13. Microsoft Access 2000 Ch-¬ng 4: Query Ý 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 nhau thì 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 nhau thì s hi n th m t record duy nh t. + No: Hi n th t t c các record Chú ý: 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 tham gia 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_Click và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 ng record 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 ng record 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 c nh 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ên Table DMKHO có liên quan. 4.7.6. L u Query: Th c hi n t ng t nh i v i Table Tó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 Trung t©m Tin häc Trang 40
  14. 14. Microsoft Access 2000 Ch-¬ng 4: Query 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 ng dò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 t Avg Tính trung bình c ng cho các c t có ki u d li u s Sum Tính t ng các c t có ki u d li u s Count m s giá tr khác r ng Min Tìm giá tr nh nh t Max Tìm giá tr l n nh t First Tìm giá tr u tiên Last Tìm giá tr cu i cùng Expression Bi u th c tính toán t các c t d li u khác trong b ng Where 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: Trung t©m Tin häc Trang 41
  15. 15. Microsoft Access 2000 Ch-¬ng 4: Query Trong ví d trên t i c t MAKHO, TENKHO, LOAIHD ta s d ng m nh Group By trong dòng Total nhóm d li u theo MAKHO, TENKHO, LOAIHD và c t Tong Tri Gia 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 c nh 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 i tê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 ng ng 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 ng u 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 InsertQuery 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 Field trê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. Trung t©m Tin häc Trang 42
  16. 16. Microsoft Access 2000 Ch-¬ng 4: Query Ví d 1: C p nh t tr ng DIENGIAIHD trong table HOADON thành Hóa n Nh p hay Hóa n Xu t tùy thu c vào lo i hóa n là Nh p hay Xu t. Ví d 2: C p nh t tr ng TRIGIATANG trong Table HOADON b ng 1.1*TRIGIA i 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 c il 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 s xu 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òng Delete 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 c khi th c hi n Query xóa các m u tin này. Trung t©m Tin häc Trang 43
  17. 17. Microsoft Access 2000 Ch-¬ng 4: Query Ví d : Xóa nh ng khách hàng có a ch C n Th t b ng DMKH. 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 Record bê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 c xó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 i nhau. 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 ngay trong 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 InsertQuery, 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 QueryAppend 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ông c 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 n nh p giá tr vào và nh ng giá tr này s c n i vào Field c ch nh trong dòng Append To t ng ng. Trung t©m Tin häc Trang 44
  18. 18. Microsoft Access 2000 Ch-¬ng 4: Query + 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 ch kho 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 QueryMake-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óm t 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. Trung t©m Tin häc Trang 45
  19. 19. Microsoft Access 2000 Ch-¬ng 4: Query 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 n field MAKHO và Click nút > a qua Selected 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 LOAIHD theo cách t ng t nh b c 3. B5- Ch n field và hàm mu n th c hi n th ng kê và click Next: Ch n SOHD và hàm Count m SOHD. Tùy theo ki u d li u c a tr ng mu n th ng kê b n có th ch n t trong s các hàm nh : Tính ng (sum), tính trung bình (avg), m (count), l y tr l n nh t/nh nh t (max/min),… Trung t©m Tin häc Trang 46
  20. 20. Microsoft Access 2000 Ch-¬ng 4: Query 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 the design) và click Finish. - Khi th c thi Query b n c MAKHO Total Of SOHD NH P XU T t qu nh sau: KH1 4 2 2 KH10 3 3 KH2 1 1 KH3 4 2 2 KH4 2 2 KH5 3 1 2 KH7 1 1 KH8 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 ng nh 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ên là 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 a query. Trong vi d trên là MAKHO, LOAIHD và SOHD. B4: Vào QueryCrosstab Query. Lúc này, xu t hi n thêm dòng Crosstab và Total vùng l i c a query. Trên dòng Crosstab b n ch n Row heading cho tr ng làm tiêu dòng, Column heading cho tr ng làm tiêu c t và Value trên tr ng Trung t©m Tin häc Trang 47
  21. 21. Microsoft Access 2000 Ch-¬ng 4: Query 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 p và 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 Total a 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 d li 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 cho Crosstab 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 n 4.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 truy n 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êu u. 2. Vào menu QueryParameters m h p tho i Query Parameters. 3. Nh p bi n tham s vào c t Parameter và ch n ki u d li u thích h p cho tham s trong c t Data Type. 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ên chú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 u mu 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ông vào dòng u ki n (criteria) t i c t mu n so sánh trong vùng l i. Trung t©m Tin häc Trang 48
  22. 22. Microsoft Access 2000 Ch-¬ng 4: Query 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í d trên nh sau: 4.11.3. Tham s c a truy v n nh n t Form th c thi Query i 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 u khi 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 con 4.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 n bê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 . Trung t©m Tin häc Trang 49
  23. 23. Microsoft Access 2000 Ch-¬ng 4: Query 2. Vào menu ViewSQL View, sao chép n i dung câu l nh SQL c a truy v n con. 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ánh nh : 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 p u ngo c n c p th p nh t s c th c hi n tr c tiên, sau ó l y k t qu a 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 t hà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ác p 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 n ang 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àng hó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 danh sách kho ã tham gia nh p xu t hàng hóa . 2. i dung câu l nh SQL: SELECT HOADON.MAKHO FROM HOADON; Trung t©m Tin häc Trang 50
  24. 24. Microsoft Access 2000 Ch-¬ng 4: Query 3. o truy v n cha: Tìm danh sách kho ang có trong danh c kho. 4. Nh p bi u th c: Not In (SELECT HOADON.MAKHO FROM HOADON;) vào dòng u ki n c a c t MAKHO trong truy v n cha. Trong ó: Toán t Not in c dùng ch n các ph n t trong m t t p h p không có trong m t t p h p khác, và câu l nh SQL trong ngo c chính là câu l nh ã sao chép b c 2. u ý: S c t tr v c a truy v n con gi c ng là m t c t. Trung t©m Tin häc Trang 51

×