Kết xuất thông tin trong tệp CSDL là từ dữ liệu hiện có trong tệp CSDL đó ta lấy ra những thông tin mang tính thống kê như: Đếm số lượng các bản ghi thoả mãn một điều kiện nào đó; tính t
Trang 1TRƯỜNG CAO ĐẲNG SƯ PHẠM QUẢNG TRỊ
KHOA CÔNG NGHỆ THÔNG TIN
Trang 2Kết xuất thông tin trong tệp CSDL là từ dữ liệu hiện có trong tệp CSDL đó ta lấy ra những thông tin mang tính thống kê như: Đếm số lượng các bản ghi thoả mãn một điều kiện nào đó; tính tổng hoặc giá trị trung bình của một hoặc nhiều trường kiểu số; tính tổng một hoặc nhiều trường kiểu số của từng nhóm bản ghi theo một trường khoá nào đó.
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 31 Đếm số lượng bản ghi
2 Tính tổng giá trị các trường kiểu số
3 Tính giá trị trung bình các trường kiểu số
4 Tính tổng bộ phận
5 Đặt lọc dữ liệu
6 Giới hạn trường dữ liệu
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 41 Đếm số lượng bản ghi
1.1 Lệnh COUNT
1.2 Hàm RECCOUNT()
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 51.Đếm số lượng bản ghi
1.1 Lệnh COUNT
Để đếm số lượng bản ghi trong một tệp CSDL thỏa mãn một điều kiện nào
đó ta sử dụng lệnh:
COUNT [<Phạm vi>][FOR <btL>][TO <bbn>]
Giải thích: Phạm vi ngầm định là ALL Lệnh đếm số lượng các bản ghi trong <phạm vi> thỏa mãn <btL> Nếu có tuỳ chọn TO <bbn> (biến bộ nhớ) thì kết quả được ghi vào <bbn>, ngược lại kết quả được ghi ra màn hình
Ví dụ:
USE HSCB COUNT FOR HSL>=4 COUNT FOR NSINH<=CTOD(‘01/01/1944’) TO CBVH COUNT TO TSCB
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 61 Đếm số lượng bản ghi
1.2 Hàm RECCOUNT()
Hàm này sẽ cho kết quả là số lượng các bản ghi đang tồn tại trên tệp
CSDL đang mở
Chú ý: Lệnh COUNT không có tuỳ chọn <phạm vi> và FOR <btL> có
nghĩa là đếm số lượng các bản ghi đang hiệu lực trên tệp CSDL đang mở, nhưng nói chung là nó không cho cùng kết quả với hàm RECCOUNT()
Ví dụ:
USE HSCB
DELE FOR HSL<3
SET DELE ON COUNT TO TSCB
? TSCB=RECCOUNT()
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 72 Tính tổng giá trị các trường kiểu số
Để tính tổng giá trị các trường kiểu số của một tệp CSDL đang mở ta sử dụng lệnh:
SUM [<Phạm vi>][<Ds trường>][TO <Ds bbn>][FOR <btL>]
Giải thích:
Phạm vi ngầm định là ALL
Nếu không có tuỳ chọn <Ds trường> thì tất cả các trường kiểu số đều được tính tổng, nếu có thì chỉ tính tổng cho những trường được liệt kê trong danh sách
Nếu có tuỳ chọn TO <Ds bbn> (danh sách biến bộ nhớ) thì các kết quả
được lưu vào trong danh sách biến bộ nhớ Chú ý rằng số lượng biến bộ nhớ được sử dụng trong danh sách này phải bằng đúng số lượng các trường kiểu
số được tính tổng và chúng tương ứng với nhau theo thứ tự được liệt kê trong
cả hai danh sách Nếu không sử dụng tuỳ chọn này thì kết quả được đưa lên màn hình
Continue
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 82 Tính tổng giá trị các trường kiểu số
Ví dụ:
USE BLUONG
SUM SUM LCB,LPC,TONG TO TLCB,TLPC,TTONG
SUM FOR KHOA=’CNTT’
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 93 Tính giá trị trung bình các trường kiểu số
Để tính giá trị trung bình các trường kiểu số của một tệp CSDL đang mở ta
sử dụng lệnh:
AVERAGE [<Phạm vi>][<Ds trường>][TO <Ds bbn>][FOR <btL>]
Giải thích:
Phạm vi ngầm định là ALL
Nếu không có tuỳ chọn <Ds trường> thì tất cả các trường kiểu số đều
được tính giá trị trung bình, nếu có thì chỉ tính giá trị trung bình cho những trường được liệt kê trong danh sách
Nếu có tuỳ chọn TO <Ds bbn> (danh sách biến bộ nhớ) thì các kết quả
được lưu vào danh sách biến bộ nhớ Chú ý rằng số lượng biến bộ nhớ được
sử dụng trong danh sách này phải bằng đúng số lượng các trường kiểu số được tính giá trị trung bình và chúng tương ứng với nhau theo thứ tự được liệt kê trong cả hai danh sách Nếu không sử dụng tuỳ chọn này thì kết quả được đưa lên màn hình
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 103 Tính giá trị trung bình các trường kiểu số
Ví dụ:
USE BLUONG
AVERAGE AVERAGE LCB,LPC,TONG TO TLCB,TLPC,TTONG
AVERAGE FOR KHOA=’CNTT’
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 114 Tính tổng bộ phận.
4.1 Khái niệm
4.2 Lệnh TOTAL
4.3 Cơ chế thực hiện
4.4 Ví dụ
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 124 Tính tổng bộ phận
4.1 Khái niệm
Tính tổng bộ phận nghĩa là tính tổng các trường kiểu số cho các bản ghi có cùng một giá trị khóa cho trước Mỗi giá trị khóa lập thành một tổng Khóa
ở đây là một trường của tệp CSDL
Ví dụ: Trên tệp BLUONG.DBF khi ta cần tính lương theo từng phòng,
khoa Điều đó có nghĩa là tính tổng của các bản ghi có cùng một giá trị trên trường KHOA
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 134 Tính tổng bộ phận
4.2 Lệnh TOTAL
TOTAL ON <Khoá> TO <tệp KQ> [FOR <btL>][FIELDS <Ds
trường>]
Giải thích:
Lệnh tính tổng bộ phận cho các bản ghi có cùng một giá trị <Khóa>
nằm liên tiếp nhau lập thành một bản ghi tổng và ghi vào <tệp KQ>.
Nếu có tuỳ chọn FOR <btL> thì chỉ có những bản ghi thỏa mãn <btL>
mới được tính tổng bộ phận
Nếu có tuỳ chọn FIELDS <Ds trường> thì việc tính tổng bộ phận chỉ
tiến hành trên những trường được liệt kê trong danh sách
<Tệp KQ> có cấu trúc hoàn toàn giống với cấu trúc của tệp đang mở.
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 144 Tính tổng bộ phận
4.3 Cơ chế thực hiện
Bắt đầu từ bản ghi đầu tiên lệnh thiết lập một giá trị khóa rồi xét những
bản ghi kế tiếp nó để lập một bản ghi tổng và ghi vào <tệp KQ> Khi gặp
bản ghi đầu tiên khác giá trị khóa, lệnh chuyển sang thiết lập giá trị khóa thứ hai, rồi thực hiện như trên, để thiết lập bản ghi tổng khác Quá trình thực hiện tương tự như trên, cho đến khi kết thúc tệp CSDL
Vì vậy, để kết quả có ý nghĩa Tệp CSDL phải được sắp xếp hoặc chỉ số theo trường khoá tính tổng bộ phận
Trang 154 Tính tổng bộ phận
4.4 Ví dụ
USE BLUONG
TOTAL ON KHOA TO THOP1
INDEX ON KHOATO T1
TOTAL ON KHOA TO THOP2
TOTAL ON KHOA TO THOP3 FOR HSL>=3
Trang 165 Đặt lọc dữ liệu
Khái niệm: Lọc dữ liệu là chỉ cho phép làm việc với những bản ghi của
tệp CSDL thỏa mãn một điều kiện nào đó, như trước đây ta đã dùng tuỳ chọn FOR <btL> trong các lệnh.
Lệnh đặt lọc:
SET FILTER TO <btL>
Với tệp CSDL đang mở việc xác lập môi trường như thế này chỉ cho
phép các lệnh tác động lên những bản ghi thỏa mãn <btL>
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 175 Đặt lọc dữ liệu
Ví dụ:
BROW FOR HSL>3
COUNT FOR HSL>3
tương đương với
USE HSCB
SET FILTER TO HSL>3
BROW COUNT
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 186 Giới hạn trường dữ liệu
Khái niệm: Giới hạn trường dữ liệu là chỉ cho phép làm việc với
những trường dữ liệu mà ta quan tâm
Lệnh giới hạn trường dữ liệu:
SET FIELD TO <Ds trường>
Với tệp CSDL đang mở việc xác lập môi trường như thế này chỉ cho phép các lệnh tác động lên những trường được liệt kê trong danh sách
Chương 7 Kết xuất thông tin trong tệp CSDL
Trang 196 Giới hạn trường dữ liệu
Ví dụ:
USE HSCB
BROW FIELD MSCB,HD,TEN
tương đương với
USE HSCB
SET FIEL TO MSCB,HD,TEN
BROW
Chương 7 Kết xuất thông tin trong tệp CSDL