You are on page 1of 38

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)
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.
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.
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)
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.
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.
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.
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.
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:
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ӟi
Dù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, &.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm IIf:
‡ Cú pháp:
IIf(expr, truepart, falsepart)
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Round:
‡ Cú pháp:
Round(expression [, numdecimalplaces])
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Mid:
‡ Cú pháp:
Mid(string, start[, length])
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Left:
‡ Cú pháp:
Left(string, length)
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Right:
‡ Cú pháp:
Right(string, length)
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm IsNull:
‡ Cú pháp:
IsNull(expression)
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Len:
‡ Cú pháp:
Len(string | varname)
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Space:
‡ Cú pháp:
Space(number)
‡ Number: Sӕ khoҧng trҳng muӕn tҥo.
‡ Ý nghĩa: Hàm tҥo khoҧng trҳng.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Trim:
‡ Cú pháp:
Trim(string)
‡ String: Chuӛi ký tӵ.
‡ Ý nghĩa: Hàm cҳt khoҧng trҳng ӣ 2 bên chuӛi ký
tӵ.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm InStr:
‡ Cú pháp:
InStr([start, string1, string2)
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm UCase:
‡ Cú pháp:
UCase(string)
‡ String: Chuӛi ký tӵ gӕc.
‡ Ý nghĩa: Hàm trҧ vӅ chuӛi ký tӵ hoa.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm LCase:
‡ Cú pháp:
UCase(string)
‡ String: Chuӛi ký tӵ gӕc.
‡ Ý nghĩa: Hàm trҧ vӅ chuӛi ký tӵ thưӡng.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Date:
‡ Cú pháp:
Date()
‡ Ý nghĩa: Hàm trҧ vӅ ngày hiӋn hành cӫa hӋ thӕng.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Weekday:
‡ Cú pháp:
Weekday(date, [firstdayofweek])
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Day:
‡ Cú pháp:
Day(date)
‡ 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).
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Month:
‡ Cú pháp:
Month(date)
‡ 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).
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Year:
‡ Cú pháp:
Year(date)
‡ 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.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Now:
‡ Cú pháp:
Now()
‡ Ý nghĩa: Hàm trҧ vӅ ngày, giӡ hiӋn hành cӫa hӋ
thӕng máy tính.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Time:
‡ Cú pháp:
Time()
‡ Ý nghĩa: Hàm trҧ vӅ giӡ hiӋn hành.
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Hour:
‡ Cú pháp:
Hour(time)
‡ 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).
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Minute:
‡ Cú pháp:
Minute(time)
‡ 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).
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ӟi
Dùng hàm: Các hàm thông dөng.
È Hàm Second:
‡ Cú pháp:
Second(time)
‡ 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).
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)


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)

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)

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)

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)

V. Truy vҩn bҵng công cө (QBE)


6. Truy vҩn nhóm dӳ liӋu (Group)
V  
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)

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.

You might also like