Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
884,76 KB
Nội dung
69 Baøi 4. 4.1. CHC NNG VÀ CÁC CÁCH TO LP QUERY Query là công c to các vn tin d liu t Table. Trong Access 2007 ta có ba cách to ra mt Query. Query Wizard: cho ta mt cách nhanh chóng to ra mt Query n gin. Tuy nhiên vi cách này cho ta rt ít la ch và kim soát. Query Design: Vi cách này Access cung cp cho ta mt li QBE (Query by Example) to lp Query mt cách trc quan sinh ng. Ch xem SQL: Vi cách này cho ta cách to lp Query mt cách mnh m và chuyên nghip. Ngi dùng to ra Query bng chính ngôn ng truy vn d liu SQL (Structured Query Language). Do cách này ch s dng cho nhng ngi lp trình chuyên nghip am hiu v ngôn ng SQL. 4.2. 4.2.1. SELECT QUERY Table 4.2.2. ACTION QUERY a) MAKE TABLE QUERY TableTable b) UPDATE QUERY Table. c) APPEND QUERY TableTable d) DELETE QUERY Table 4.2.3. CROSSTAB QUERY nh thg Table 70 4QueryTable T_DIEMSV 4.3. 4.3.1. CÁC HÀM S HC a) HÀM ROUND Cú pháp: ROUND(Expression [,numdecimalplaces]) : Expression là biu thc s cn làm tròn. Numdecimalplaces Công dng: Tr v con s c làm tròn có s s l nh bi 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à mt con s. Công dng: Tr v phn nguyên ca con s nh bi number. Ví d: FIX(8.4) =INT(8.4) = 8; FIX(-8,4)=-9, INT(-8.4)=-8 : i vi s âm FIX làm tròn xung, INT làm tròn lên. Nu Number là Null thì hàm tr v tr Null. c) HÀM ABS Cú pháp: Abs(number) number là mt con s. Công dng: Tr v tr tuyi ca mt con s. Ví d: Abs(-1) = Abs(1) = 1 : Nu tham s number là Null thì hàm tr v tr Null. Nu tham s number là mt bii to thì tr v s 0. d) HÀM SUM Cú pháp: Sum(expr) expr là biu thc chunh ct cha d liu s mà ta mun cng. Công dng: Tr v tng ca mt tp hp các giá tr trong cnh trên Query. Ví d: Sum([SOLUONG]*[DONGIA]) e) HÀM AVG Cú pháp: Avg(expr) 71 expr là biu thc chunh ct cha d liu s mà ta mun tính trung bình. Công dng: Tr v trung bình cng ca mt tp hp các giá tr trong ct xác nh trên Query. Ví d: Avg([SOLUONG]*[DONGIA]) f) HÀM COUNT Cú pháp: Count(expr) expr là biu thc chunh ct cha d liu không rng mà ta mum. Công dng: m s Record tr v ca mt Query. Ví d: Count([MANV] 4.3.2. CÁC HÀM V CHUI a) HÀM LEN Cú pháp: Len(String | Varname) String là mt chui ký t. Varname là tên bin kiu chui. Công dng: Hàm tr v chinh bi chui hoc chiu dài ca giá tr bin chui. Ví d: b) HÀM LEFT Cú pháp: Left(string, length) String là chui ký t mà ta cn ly nhng ký t bên trái ca nó. Công dng: Tr v length ký t bên trái ca chui string. Ví d: c) HÀM RIGHT Cú pháp: Right(string, length) String là chui ký t mà ta cn ly nhng ký t bên phi ca nó. Công dng: tr v length ký t bên phi ca chui string. Ví d: d) HÀM MID Cú pháp: Mid(string, start[, length]) String là chui mà ta cn ly các ký t tr v. Start là s nguyên nh v trí ký t u tiên cn ly. Length con s nh s ký t ca chui cn ly. Công dng: Tr v chui con ca chui string. Ví d: e) HÀM INSTR Cú pháp: InStr([start, ]string1, string2[, compare]) Start là v trí bu tìm. String1 chui m. String 2 chui con. Công dng: tr v v trí tìm thu tiên ca chui con trong chui 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à chui ký t. Công dng: Chuyn các ký t trong chui thành chui vi các ký t ng. Ví d: g) HÀM UCASE Cú pháp: UCase(string) String là chui ký t. Công dng: Chuyn các ký t trong chui thành chui vi các ký t hoa. Ví d: trung tam tin hocTRUNG TAM TIN HOC h) HÀM LTRIM, RTRIM, TRIM Cú pháp: LTrim(string), RTrim(string), Trim(string) String là chui ký t. Công dng: Ct b các ký t trng u chui (Ltrim), cui chui (Rtrim), và c u và cui (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 trng cn tr v. Công dng: tr v mt chui các ký t trng. Ví d : 4.3.3. CÁC HÀM V NGÀY THÁNG a) HÀM DATE Cú pháp: Date() Công dng: Tr v n tng h trong máy). Ví d : Date() = 28/07/2008 b) HÀM TIME Cú pháp: Time() Công dng: Tr v gi hin tng h trong máy). Ví d : Time() = 11:31:54 AM c) HÀM NOW Cú pháp: Now() Công dng: Tr v ngày và gi hin tng 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à biu thc có kiu ngày Công dng: Tr v mt con s t n 31 cho bit ngày trong tháng. Ví d: Day(#22/06/2006#) = 22 e) HÀM MONTH Cú pháp: Month(date) date là biu thc có kiu ngày Công dng: tr v mt con s t n 12 cho bit tháng trong . Ví d: month(#22/06/2006#) = 6 f) HÀM YEAR Cú pháp: Year(date) date là biu thc có kiu ngày Công dng: tr v mt con s i di cho Ví d: year(#22/06/2006#) = 2006 g) HÀM WEEKDAY Cú pháp: Weekday(date) Trong : date là biu thc có kiu ngày. 74 Công dng: Tr v mt con s i din cho ngày ca tun. 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 DNG HÀM FORMAT Cú pháp: Format(expression[, Format]) Trong : expression là biu thc cn nh dng. Format là Format Numbers S dng ký hiu nh dng s có sn hoc t nh ngha Dates and times S dng ký hiu nh dng ngày gi có sn hoc t nh ngha Date and time serial numbers S dng ký hiu nh dng ngày gi hoc s có sn Strings S dng nh dng chui do t mình nh ngha. D 1-30 Dd 1-30 Ww 1-51 Mmm Hin th tên tháng vit tt bng ting 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 thng theo nh dng long time. MyStr = Format(Time, "Long Time") ' Tr v ngày h thng theo nh dng 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". ' Nu không có tham s Format thì hàm s tr v mt chui. MyStr = Format(23) ' Tr v nh dng do ngi dùng nh ngha. 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 IU KIN HÀM IIF Cú pháp: IIf(expr, truepart, falsepart) Trong : expr là biu thc logic có giá tr ng hoc 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à ngc li s tr v 76 4.4. NG PHNG PHÁP DESIGN VIEW 4.4.1. a) C TO T màn hình giao din chính Chn phiu Create-> Trong ngn Other Click chut vào mc Query Design. : Màn hình ca phiu Create Mt ca s thit k QBE xut hin cùng vi hp thoi Show Table : Màn hình thit k Query cùng vi hp thoi Show Table. Query Chn các Table ly d liu to Query, ri nhn Add (hoc ch cn nhp kép chut vào tên Table cn chn) Click chut vào nút Close ng ca s Show Table Queryách chn ging nh là cách chn trong lúc s dng phng pháp Advanced Filter/ Sort). 77 Sort: Show: Criteria Or: Ví : Query Table T_KHAC : Màn hình thit k Query theo ví d. b) C KT QU HOC THC HIN QUERY XemClick chut vào nú : t View và nú Click chut vào nú 78 : Query trên. c) TO CT TÍNH TOÁN TRONG QUERY - <>:<> TableQuery - 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 THUC TÍNH CA MT CT 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 dng: Tr v phn nguyên ca con s nh bi number. Ví d: FIX(8 .4) =INT(8 .4) = 8; FIX (-8 ,4) =-9 , INT (-8 .4) =-8 : i vi s âm FIX làm tròn xung, INT làm tròn lên. Nu Number. Baøi 4. 4. 1. CHC NNG VÀ CÁC CÁCH TO LP QUERY Query là công c to các vn tin d liu t Table. Trong Access 2007 ta có ba cách to ra mt Query. Query. 4. 15 Trong li QBE thit lp nh sau: :Cách s dng tham s trong Query 7: p liu khi chy Query 84 4. 6. 4. 6.1. CROSSTAB QUERY