GIÁO TRÌNH LẬP TRÌNH QUẢN LÝ VỚI MICROSOFT OFFIC ACCESS - BÀI 4 QUERY – BẢNG TRUY VẤN ppsx

24 274 0
GIÁO TRÌNH LẬP TRÌNH QUẢN LÝ VỚI MICROSOFT OFFIC ACCESS - BÀI 4 QUERY – BẢNG TRUY VẤN ppsx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

69 Baøi 4.  4.1. CHC NNG VÀ CÁC CÁCH TO LP QUERY Query là công c  to các  vn tin d liu t Table. Trong Access 2007 ta có ba cách  to ra mt Query.  Query Wizard: cho ta mt cách nhanh chóng  to ra mt Query n gin. Tuy nhiên vi cách này cho ta rt ít la ch và kim soát.  Query Design: Vi cách này Access cung cp cho ta mt li QBE (Query by Example)  to lp Query mt cách trc quan sinh ng.  Ch  xem SQL: Vi cách này cho ta cách to lp Query mt cách mnh m và chuyên nghip. Ngi dùng to ra Query bng chính ngôn ng truy vn d liu SQL (Structured Query Language). Do  cách này ch s dng cho nhng ngi lp trình chuyên nghip am hiu v ngôn ng SQL. 4.2.  4.2.1. SELECT QUERY  Table      4.2.2. ACTION QUERY a) MAKE TABLE QUERY TableTable b) UPDATE QUERY Table. c) APPEND QUERY TableTable d) DELETE QUERY Table 4.2.3. CROSSTAB QUERY nh thg Table  70 4QueryTable T_DIEMSV 4.3.  4.3.1. CÁC HÀM S HC a) HÀM ROUND  Cú pháp: ROUND(Expression [,numdecimalplaces])  : Expression là biu thc s cn làm tròn. Numdecimalplaces    Công dng: Tr v con s c làm tròn có s s l nh bi numdecimalplaces  : round(123.4567) = 123, round(123.4567,1) = 123.5, round(123.4567,2) = 123.46 b) HÀM FIX và INT  Cú pháp: Int(number); Fix(number)  : number là mt con s.  Công dng: Tr v phn nguyên ca con s nh bi number.  Ví d: FIX(8.4) =INT(8.4) = 8; FIX(-8,4)=-9, INT(-8.4)=-8  : i vi s âm FIX làm tròn xung, INT làm tròn lên. Nu Number là Null thì hàm tr v tr Null. c) HÀM ABS  Cú pháp: Abs(number)   number là mt con s.  Công dng: Tr v tr tuyi ca mt con s.  Ví d: Abs(-1) = Abs(1) = 1   : Nu tham s number là Null thì hàm tr v tr Null. Nu tham s number là mt bii to thì tr v s 0. d) HÀM SUM  Cú pháp: Sum(expr)  expr là biu thc chunh ct cha d liu s mà ta mun cng.  Công dng: Tr v tng ca mt tp hp các giá tr trong cnh trên Query.  Ví d: Sum([SOLUONG]*[DONGIA]) e) HÀM AVG  Cú pháp: Avg(expr)  71  expr là biu thc chunh ct cha d liu s mà ta mun tính trung bình.  Công dng: Tr v trung bình cng ca mt tp hp các giá tr trong ct xác nh trên Query.  Ví d: Avg([SOLUONG]*[DONGIA]) f) HÀM COUNT  Cú pháp: Count(expr)  expr là biu thc chunh ct cha d liu không rng mà ta mum.  Công dng: m s Record tr v ca mt Query.  Ví d: Count([MANV] 4.3.2. CÁC HÀM V CHUI a) HÀM LEN  Cú pháp: Len(String | Varname)  String là mt chui ký t. Varname là tên bin kiu chui.  Công dng: Hàm tr v chinh bi chui hoc chiu dài ca giá tr bin chui.  Ví d:  b) HÀM LEFT  Cú pháp: Left(string, length)  String là chui ký t mà ta cn ly nhng ký t bên trái ca nó.  Công dng: Tr v length ký t bên trái ca chui string.  Ví d:  c) HÀM RIGHT  Cú pháp: Right(string, length)  String là chui ký t mà ta cn ly nhng ký t bên phi ca nó.  Công dng: tr v length ký t bên phi ca chui string.  Ví d:  d) HÀM MID  Cú pháp: Mid(string, start[, length])  String là chui mà ta cn ly các ký t tr v. Start là s nguyên nh v trí ký t u tiên cn ly. Length con s nh s ký t ca chui cn ly.  Công dng: Tr v chui con ca chui string.  Ví d:  e) HÀM INSTR  Cú pháp: InStr([start, ]string1, string2[, compare])   Start là v trí bu tìm. String1 chui m. String 2 chui con.  Công dng: tr v v trí tìm thu tiên ca chui con trong chui m. Tham  Constant Value Description vbUseCompareOption -1 Option Compare statement. vbBinaryCompare 0 . 72 vbTextCompare 1 . vbDatabaseCompare 2 . So sánh theo thông tin trong Database.    string1 is zero-length 0 string1 is Null Null string2 is zero-length start string2 is Null Null string2 is not found 0 string2 is found within string1  start > string2 0  Ví d:  f) HÀM LCASE  Cú pháp: LCase(string)  String là chui ký t.  Công dng: Chuyn các ký t trong chui thành chui vi các ký t ng.  Ví d:  g) HÀM UCASE  Cú pháp: UCase(string)  String là chui ký t.  Công dng: Chuyn các ký t trong chui thành chui vi các ký t hoa.  Ví d: trung tam tin hocTRUNG TAM TIN HOC h) HÀM LTRIM, RTRIM, TRIM  Cú pháp: LTrim(string), RTrim(string), Trim(string)  String là chui ký t.  Công dng: Ct b các ký t trng  u chui (Ltrim),  cui chui (Rtrim), và c u và cui (Trim).  Ví d:  Tin hoc  R Tin hoc   Tin hoc  i) HÀM SPACE  Cú pháp: Space(number) 73   number là s ký t trng cn tr v.  Công dng: tr v mt chui các ký t trng.  Ví d :  4.3.3. CÁC HÀM V NGÀY THÁNG  a) HÀM DATE  Cú pháp: Date()  Công dng: Tr v n tng h trong máy).  Ví d : Date() = 28/07/2008 b) HÀM TIME  Cú pháp: Time()  Công dng: Tr v gi hin tng h trong máy).  Ví d : Time() = 11:31:54 AM c) HÀM NOW  Cú pháp: Now()  Công dng: Tr v ngày và gi hin tng h trong máy).  Ví d : now() = 28/07/2008 11:15:47 AM d) HÀM DAY  Cú pháp: Day(date)   date là biu thc có kiu ngày  Công dng: Tr v mt con s t n 31 cho bit ngày trong tháng.  Ví d: Day(#22/06/2006#) = 22 e) HÀM MONTH  Cú pháp: Month(date)  date là biu thc có kiu ngày  Công dng: tr v mt con s t n 12 cho bit tháng trong .  Ví d: month(#22/06/2006#) = 6 f) HÀM YEAR  Cú pháp: Year(date)  date là biu thc có kiu ngày  Công dng: tr v mt con s i di cho   Ví d: year(#22/06/2006#) = 2006 g) HÀM WEEKDAY  Cú pháp: Weekday(date)  Trong : date là biu thc có kiu ngày. 74  Công dng: Tr v mt con s i din cho ngày ca tun.  sau: Constant Value Description vbSunday 1 Sunday vbMonday 2 Monday vbTuesday 3 Tuesday vbWednesday 4 Wednesday vbThursday 5 Thursday vbFriday 6 Friday vbSaturday 7 Saturday  Ví d: Weekday(#22/06/2006#) = 5 4.3.4. NH DNG HÀM FORMAT  Cú pháp: Format(expression[, Format])  Trong : expression là biu thc cn nh dng. Format là Format  Numbers S dng ký hiu nh dng s có sn hoc t nh ngha Dates and times S dng ký hiu nh dng ngày gi có sn hoc t nh ngha Date and time serial numbers S dng ký hiu nh dng ngày gi hoc s có sn Strings S dng nh dng chui do t mình nh ngha.   D 1-30 Dd 1-30 Ww 1-51 Mmm Hin th tên tháng vit tt bng ting Anh Y 1-355 Yyyy 100-9666  Ví d:  : 75 Dim MyTime, MyDate, MyStr MyTime = #17:04:23# MyDate = #January 27, 1993# ' Tr v gi h thng theo nh dng long time. MyStr = Format(Time, "Long Time") ' Tr v ngày h thng theo nh dng long date. MyStr = Format(Date, "Long Date") MyStr = Format(MyTime, "h:m:s") ' Tr v MyStr = Format(MyTime, "hh:mm:ss AMPM") ' Tr v MyStr = Format(MyDate, "dddd, mmm d yyyy") ' Tr v ' Jan 27 1993". ' Nu không có tham s Format thì hàm s tr v mt chui. MyStr = Format(23) ' Tr v nh dng do ngi dùng nh ngha. MyStr = Format(5459.4, "##,##0.00") ' Tr v MyStr = Format(334.9, "###0.00") ' Tr v MyStr = Format(5, "0.00%") ' Tr v "500.00%". MyStr = Format("HELLO", "<") ' Tr v MyStr = Format("This is it", ">") ' Tr v 4.3.5. HÀM IU KIN HÀM IIF  Cú pháp: IIf(expr, truepart, falsepart)  Trong : expr là biu thc logic có giá tr ng hoc sai. Truepart là giá tr mà hàm tr v khi expr là ng. Falsepart là giá tr mà hàm tr v khi expr là sai.  Ví d: IIfàm tr v  và ngc li s tr v  76 4.4. NG PHNG PHÁP DESIGN VIEW 4.4.1.  a) C TO  T màn hình giao din chính Chn phiu Create-> Trong ngn Other Click chut vào mc Query Design.  : Màn hình ca phiu Create Mt ca s thit k QBE xut hin cùng vi hp thoi Show Table  : Màn hình thit k Query cùng vi hp thoi Show Table.   Query  Chn các Table  ly d liu to Query, ri nhn Add (hoc ch cn nhp kép chut vào tên Table cn chn)  Click chut vào nút Close  ng ca s Show Table  Queryách chn ging nh là cách chn trong lúc s dng phng pháp Advanced Filter/ Sort).   77  Sort:   Show:   Criteria  Or:  Ví :   Query         Table T_KHAC   : Màn hình thit k Query theo ví d. b) C KT QU HOC THC HIN QUERY  XemClick chut vào nú  : t View và nú  Click chut vào nú 78  : Query trên. c) TO CT TÍNH TOÁN TRONG QUERY -  <>:<>  TableQuery -   TRIGIA:[SOLUONG]*[DONGIA]     - THANG:MONTH([NGAY]) NAM:YEAR([NGAY]) -  Table Table    Query     Table    Table        TRIGIA:[SOLUONG]*[T_CTHOADO     Table T_CTHOADON). d) KHAI BÁO THUC TÍNH CA MT CT TRONG QUERY Click    Query Medium Date. [...]... Table đích 90 Hình 4. 34 :Màn hình thiết kế Query Q AppendNhanVien  Lưu Query với tên Q AppendNhanVien: Hình 4. 35 : t tên cho Query là Q AppendNhanVien  Thực hiện Query, xuất hiện thông báo: Hình 4. 36 : Hộp thoại th ng báo c 12 mẩu tin được thêm vào Table T NHANVIEN 4. 6.5 DELETE QUERY Là loại Query có chức năng xóa các mẩu tin trong Table thõa mãn một điều kiện nào đó a) VÍ DỤ Tạo Delete Query có tên Q... lượng khi chạy Query ta có 2 cột là MaxOfSoluong và MinOfSoluong - Muốn tên cột theo ý muốn khác với nguyên lý trên thì trên dòng Field ta có thể định nghĩa tên cột theo cú pháp: : Ví dụ: Hình 4. 12 :Ví dụ định ngh a tên cột 81 Hình 4. 13 :Kết quả khi chạy Query 4. 5 SỬ DỤNG THAM S TRONG QUERY 4. 5.1 Ý NGH A CỦA VIỆC SỬ DỤNG THAM S Tham số trong Query dùng để thực hiện các Query theo một... một giá trị do người sử dụng nhập vào khi thực hiện Query 4. 5.2 C C BƯỚC TẠO THAM S a) KHAI B O ĐỊNH NGH A THAM S - Click chuột vào nút Parameters trên Toolbar Hình 4. 14 :Nút Parameters trên Toolbar Hình 4. 15 :Hộp thoại Query Parameters 82 - Ghi tên tham số ở cột Parameter và chọn kiểu dữ liệu ở cột Data Type (chọn kiểu phù hợp với kiểu của cột trong bảng mà ta cần đưa tham số vào) b) SỬ DỤNG Tên của... khi thành lập cột mới trên dòng Field,… Ví dụ 1: Sử dụng các Table T_Hoadon và T_CTHOADON để theo dõi các hóa đơn được lập trong khoảng thời gian từ một tháng đến một tháng nào đó được mà người dùng nhập từ bàn phím:  Trong Parameters định nghĩa 2 biến như hình 4. 15  Trong lưới QBE thiết lập như sau: Hình 4. 16 :Cách sử dụng tham số trong Query Hình 4. 17: Màn hình nhập liệu khi chạy Query 83 4. 6 TẠO... mới vào)  Lưu Query vừa tạo với tên Q BACKUP1: Hình 4. 23 : t tên cho Query là Q BACKUP1  Để xem trước dữ liệu của Table mới khi được tạo lập ta Click chuột vào nút View  Thực hiện chạy Query để tạo Table mới ta Click chuột vào nút Run 86 Hình 4. 24: Th ng báo số mẩu tin s được tạo trong Table mới Lưu : Trường hợp Table T THEODOINHANVIEN đã được tạo rồi sẽ xuất hiện thông báo Hình 4. 25 : Th ng báo... dữ liệu  Where: Điều kiện lọc dữ liệu cho Query Thí dụ: Tạo Query để thống kê số lượng nhập, xuất lớn nhất và nhỏ nhất của từng khách hàng: Hình 4. 11 : Yêu cầu chạy Query cho kết quả như trên 80 Hình 4. 11 : Màn hình thiết kế Query gom nh m theo yêu cầu trên Chú ý: - Khi chạy Query, tên cột mà ta chọn trong dòng Total là một tên hàm thì tên cột sẽ được thành lập theo nguyên tắc Of ...Hình 4. 8 : Khai báo thuộc tính cho cột NGAY trong Query Hình 4. 9: Chọn thuộc tính Format cho cột NGAY 4. 4.2 TẠO SELECT QUERY CÓ GOM NHÓM TH NG KÊ  Các bước tạo giống như tạo một Select Query như trên  Click chuột vào nút Totals trên thanh Toolbar để chèn thêm dòng Total vào lưới thiết kế 79 Hình 4. 10:Nút Totals trên thanh Toolbar  Ý nghĩa của các hàm... THEODOINHANVIEN đang c s bị x a trước khi tạo Tbale mới Hình 4. 26 : Table T THEODOINHANVIEN đ được tạo ra trong ngăn Query 87 Hình 4. 27 : Nội dung của Table mới T THEODOINHANVIEN 4. 6.3 UPDATE QUERY Update Query là loại Query có chức năng cập nhật lại giá trị của các trường trong Table theo một công thức nào đó a) VÍ DỤ Sử dụng Table T THEODOINHANVIEN tạo Query tên Q UpdateThuong để cập nhật dữ liệu cho cột... ngày công lớn hơn 24 b) C C BƯỚC TẠO  Từ màn hình Create bấm vào Query Design  Chọn Table cần cập nhật là T THEODOINHANVIEN  Từ màn hình thiết kế Query lưới QBE ta Click chuột vào nút Update trên Toolbar Hình 4. 28 : Click vào n t Update  Khai báo trên lưới: 88 Hình 4. 29 : Màn hình thiết kế Query Q UpdateThuong  Thực hiện Query, xuất hiện thông báo có 23 mẩu tin được cập nhật: Hình 4. 30 : Th ng báo... TẠO C C LOẠI QUERY KH C 4. 6.1 CROSSTAB QUERY Crosstab Query là hình thức thống kê dữ liệu trong các Table theo nguyên tắc lấy giá trị của các mẩu tin trên một cột nào đó gom nhóm lại để thành lập ra các cột mới để thống kê số liệu theo từng nhóm hàng ngang và cột dọc Thí dụ: Từ Table T_Nhanvien tạo Query để thống kê số nhân viên nam, nữ theo từng phòng ban như sau: Hình 4. 18: M u CrossTab Query để thống . Công dng: Tr v phn nguyên ca con s nh bi number.  Ví d: FIX(8 .4) =INT(8 .4) = 8; FIX (-8 ,4) =-9 , INT (-8 .4) =-8  : i vi s âm FIX làm tròn xung, INT làm tròn lên. Nu Number. Baøi 4.  4. 1. CHC NNG VÀ CÁC CÁCH TO LP QUERY Query là công c  to các  vn tin d liu t Table. Trong Access 2007 ta có ba cách  to ra mt Query.  Query. 4. 15  Trong li QBE thit lp nh sau:  :Cách s dng tham s trong Query 7: p liu khi chy Query 84 4. 6.  4. 6.1. CROSSTAB QUERY

Ngày đăng: 27/07/2014, 03:21

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan