bai giang query

38
GIÁO TRÌNH ĐÀO TẠO MICROSOFT OFFICE ACCESS 2003 y vấn dữ liệu (Query) – Truy vấn chọn (Select Qu

Upload: tranhuan2009

Post on 27-Jun-2015

93 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: bai giang Query

GIÁO TRÌNH ĐÀO TẠO

MICROSOFT OFFICE ACCESS 2003

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 2: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

I. Tại sao phải dùng truy vấn (Query)? Với Access, ta có thể dùng công cụ truy vấn (Query) để đặt

những câu hỏi liên quan đến những dữ liệu chứa trong các bảng của cơ sở dữ liệu mà ta đang sử dụng. Từ những câu hỏi mà chúng ta đặt ra, với cách thiết kế một truy vấn, chúng ta có thể rút những thông tin cần thiết.

Ví dụ: Chúng ta có thể đặt câu hỏi như sau “Có bao nhiêu sinh viên thi đậu môn học có mã số là A015?”, … Từ các bảng dữ liệu của cơ sở dữ liệu, với công cụ truy vấn ta có thể tìm câu trả lời của câu hỏi trên.

Page 3: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

II. Lợi ích của truy vấn (Query) Chọn ra những mẫu tin thoả mãn những điều kiện mà chúng

ta quy định. Lựa chọn những vùng dữ liệu cần thiết trong một hay nhiều

bảng ra trên cùng một bảng truy vấn. Trong bảng truy vấn chúng ta cũng có thể xếp thứ tự các

mẫu tin theo một thứ tự nào đó. Trong bảng truy vấn chúng ta có thể tạo vùng bảng tính.

Trên vùng tính toán chúng ta có thể chứa những kết quả được thực hiện từ những phép toán trên các dữ liệu.

Sử dụng truy vấn làm nguồn dữ liệu cho biểu mẫu (Form), báo cáo (Report) hoặc một truy vấn khác.

Page 4: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

III. Các loại truy vấn Truy vấn chọn lựa (Select Query) Truy vấn tạo bảng (Make – Table Query) Truy vấn cập nhật (Update Query) Truy vấn thêm (Append Query) Truy vấn xoá (Delete Query) Truy vấn chéo (Crosstab Query)

Page 5: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

1. Tạo mới truy vấn lựa chọn (Select Query) Chọn kiểu đối tượng Queries. Chọn Menu New Design View Click OK. Chọn tên bảng Click Add Click Close. Chọn loại truy vấn: Chọn Menu Query Select

Query, xuất hiện vùng làm việc Select Query.

Page 6: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

1. Tạo mới truy vấn lựa chọn (Select Query) Drag các tên cột của các bảng cần thể hiện trong Query

vào các cột của vùng lưới QBE (QBE Grid) hoặc tạo mới các cột theo yêu cầu bằng các công thức, hàm cơ bản…

Chọn các thông số trong: Sort, Show, Criteria. Lưu truy vấn hoặc đóng:

• Chọn Menu File Save.

• Nhập tên của truy vấn Click OK.

Page 7: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

2. Ví dụ

Giả sử trong bảng HOCSINH có các trường (SBD, HO, TEN, PHAI, NGAYSINH, LOP) và trong bảng DIEM có các trường (SBD, TOAN, VAN, NGOAINGU). Lập danh sách học sinh gồm các trường: SBD, HOTEN, DIEMTRUNGBINH. Ta thực hiện như sau: Chọn đối tượng Queries trong CSDL. Chọn Menu New Design View Click OK. Trong cửa sổ Show Table, chọn các bảng có các thông

tin yêu cầu: HOCSINH, DIEM. Click Add, Click Close.

Page 8: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

2. Ví dụ Drag cột SBD từ bảng HOCSINH vào cột đầu tiên của

vùng lưới. Nhập vào cột 2: HOTEN: [HO] &" "& [TEN]. Nhập vào cột 3: DIEMTRUNGBINH: ([TOAN]*3+

[VAN]*2+[NGOAINGU]*2)/7.

Page 9: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

2. Ví dụ Chọn Menu Query Run, hoặc Click vào biểu tượng

(Run) trên thanh Query Design. Kết quả có được:

Page 10: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng công thức tự tạo: Tạo một cột mới bằng cách kết hợp các phép toán +, -, *, /, =, >, <, <>, ^, Mod, Like, Is, &.

Page 11: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm IIf:

• Cú pháp:

• Expr: Biểu thức điều kiện.• Truepart: Giá trị hoặc biểu thức trả về nếu

biểu thức điều kiện đúng.• Falsepart: Giá trị hoặc biểu thức trả về nếu

biểu thức điều kiện sai.• Ý nghĩa: Hàm trả về giá trị hoặc biểu thức đúng

nếu biểu thức điều kiện đúng, trả về giá trị hoặc biểu thức sai nếu biểu thức điều kiện sai.

IIf(expr, truepart, falsepart)

Page 12: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Round:

• Cú pháp:

• Expression: Biểu thức số cần làm tròn.• Numdecimalplaces: Làm tròn bên phải chữ số

thập phân bao nhiêu số. Nếu giá trị này không có thì hàm Round lấy số nguyên.

• Ý nghĩa: Hàm làm tròn số đến chữ số thập phân đã xác định.

Round(expression [, numdecimalplaces])

Page 13: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Mid:

• Cú pháp:

• String: Chuỗi ký tự gốc.• Start: Vị trí p bắt đầu.• Length: Chiều dài n ký tự muốn lấy.

• Ý nghĩa: Hàm trả về n ký tự bắt đầu từ ký tự thứ p.

Mid(string, start[, length])

Page 14: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Left:

• Cú pháp:

• String: Chuỗi ký tự gốc.• Length: Số ký tự n muốn lấy.

• Ý nghĩa: Trích ra n ký tự ở bên trái của chuỗi được chỉ định.

Left(string, length)

Page 15: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Right:

• Cú pháp:

• String: Chuỗi ký tự gốc.• Length: Số ký tự n muốn lấy.

• Ý nghĩa: Trích ra n ký tự ở bên phải của chuỗi được chỉ định.

Right(string, length)

Page 16: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm IsNull:

• Cú pháp:

• Expression: Có thể là biểu thức số hoặc là biểu thức chuỗi.

• Ý nghĩa: Hàm trả về giá trị đúng (True) nếu biểu thức không chứa dữ liệu (rỗng). Ngược lại, hàm trả về giá trị sai (False). Chuỗi rỗng (zero-length string (“”)) không được xem là Null.

IsNull(expression)

Page 17: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Len:

• Cú pháp:

• String: Chuỗi muốn lấy chiều dài.• Varname: Tên biến.

• Ý nghĩa: Hàm trả về chiều dài của chuỗi hoặc biến.

Len(string | varname)

Page 18: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Space:

• Cú pháp:

• Number: Số khoảng trắng muốn tạo.• Ý nghĩa: Hàm tạo khoảng trắng.

Space(number)

Page 19: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Trim:

• Cú pháp:

• String: Chuỗi ký tự.• Ý nghĩa: Hàm cắt khoảng trắng ở 2 bên chuỗi ký

tự.

Trim(string)

Page 20: bai giang Query

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm InStr:

• Cú pháp:

• Start (không bắt buộc): Vị trí bắt đầu tìm kiếm. Nếu bỏ qua tham số này, hàm bắt đầu tìm vị trí đầu tiên.

• String1: Chuỗi đang được tìm kiếm.• String2: Chuỗi muốn tìm trong String1.

• Ý nghĩa: Tìm vị trí của một chuỗi nằm trong chuỗi muốn tìm.

InStr([start, string1, string2)

Page 21: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm UCase:

• Cú pháp:

• String: Chuỗi ký tự gốc.• Ý nghĩa: Hàm trả về chuỗi ký tự hoa.

UCase(string)

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 22: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm LCase:

• Cú pháp:

• String: Chuỗi ký tự gốc.• Ý nghĩa: Hàm trả về chuỗi ký tự thường.

UCase(string)

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 23: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Date:

• Cú pháp:

• Ý nghĩa: Hàm trả về ngày hiện hành của hệ thống.

Date()

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 24: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Weekday:

• Cú pháp:

• Date: Có thể là biến, biểu thức chuỗi, hoặc biểu thức số được thể hiện dưới dạng ngày.

• Firstdayofweek: Là hằng số chỉ rõ ngày đầu tiên của tuần.

• Ý nghĩa: Hàm trả về giá trị thứ trong tuần.

Weekday(date, [firstdayofweek])

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 25: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Day:

• Cú pháp:

• Date: Có thể là biến, biểu thức chuỗi, hoặc biểu thức số được thể hiện dưới dạng ngày.

• Ý nghĩa: Hàm trả về giá trị ngày trong tháng (mang giá trị từ 1 đến 31).

Day(date)

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 26: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Month:

• Cú pháp:

• Date: Có thể là biến, biểu thức chuỗi, hoặc biểu thức số được thể hiện dưới dạng ngày.

• Ý nghĩa: Hàm trả về giá trị tháng trong năm (mang giá trị từ 1 đến 12).

Month(date)

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 27: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Year:

• Cú pháp:

• Date: Có thể là biến, biểu thức chuỗi, hoặc biểu thức số được thể hiện dưới dạng ngày.

• Ý nghĩa: Hàm trả về năm.

Year(date)

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 28: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Now:

• Cú pháp:

• Ý nghĩa: Hàm trả về ngày, giờ hiện hành của hệ thống máy tính.

Now()

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 29: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Time:

• Cú pháp:

• Ý nghĩa: Hàm trả về giờ hiện hành.

Time()

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 30: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Hour:

• Cú pháp:

• Time: Có thể là biến, biểu thức chuỗi, hoặc biểu thức số được thể hiện dưới dạng giờ.

• Ý nghĩa: Hàm trả về giá trị giờ trong ngày (mang giá trị từ 0 đến 23).

Hour(time)

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 31: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Minute:

• Cú pháp:

• Time: Có thể là biến, biểu thức chuỗi, hoặc biểu thức số được thể hiện dưới dạng giờ.

• Ý nghĩa: Hàm trả về giá trị phút (mang giá trị từ 0 đến 59).

Minute(time)

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 32: bai giang Query

V. Truy vấn bằng công cụ (QBE)

3. Thiết kế nội dung cho cột mớiDùng hàm: Các hàm thông dụng. Hàm Second:

• Cú pháp:

• Time: Có thể là biến, biểu thức chuỗi, hoặc biểu thức số được thể hiện dưới dạng giờ.

• Ý nghĩa: Hàm trả về giá trị giây (mang giá trị từ 0 đến 59).

Second(time)

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 33: bai giang Query

V. Truy vấn bằng công cụ (QBE)4. Cách tạo vùng điều kiện (Criteria)

Khác dòng: Or. Cùng dòng: And. Ví dụ: Lấy danh sách học sinh có họ “Nguyen” và đó

là nữ.

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 34: bai giang Query

V. Truy vấn bằng công cụ (QBE)

4. Cách tạo vùng điều kiện (Criteria) Các câu lệnh điều kiện SQL đơn giản thường dùng:

• Giống dạng: Like "H*".

• Giữa 2 giá trị: Between <giá trị 1> And <giá trị 2>.

• Có trong tập hợp: In (<giá trị 1>, <giá trị 2>, …, <giá trị n>).

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 35: bai giang Query

V. Truy vấn bằng công cụ (QBE)

5. Tham số trong truy vấn Biểu thức trong cặp dấu [ ] mà không phải là tên biến,

tên cột thì được xem là tham số. Ví dụ: Muốn thể hiện thông tin cho 1 phái nào đó tùy

theo yêu cầu của người dùng, trong dòng Criteria của cột PHAI ta nhập: [Nhap -1 cho Nam, 0 cho Nu:].

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 36: bai giang Query

V. Truy vấn bằng công cụ (QBE)

6. Truy vấn nhóm dữ liệu (Group) Trong khi thiết kế truy vấn, chọn Menu View

Totals. Sử dụng các hàm tính toán thích hợp vào các cột có

nhu cầu tính toán trong phần Total.

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 37: bai giang Query

V. Truy vấn bằng công cụ (QBE)

6. Truy vấn nhóm dữ liệu (Group)

Hàm Ý nghĩa

Group By Nhóm dữ liệu theo giá trị của cột này.

Avg Tính trung bình cho các cột có dữ liệu số.

Sum Tính tổng cho các cột có dữ liệu số.

Count Đếm số Record.

Min Tìm giá trị nhỏ nhất.

Max Tìm giá trị lớn nhất

Expression Biểu thức tính toán thành lập từ các cột khác.

Where Điều kiện lọc dữ liệu cho truy vấn.

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)

Page 38: bai giang Query

V. Truy vấn bằng công cụ (QBE)

6. Truy vấn nhóm dữ liệu (Group) Ví dụ: Tính tuổi trung bình của lớp.

Bài 3: Truy vấn dữ liệu (Query) – Truy vấn chọn (Select Query)