Bài giảng Lập trình viên mã nguồn mở PHP - Module 3, Bài 3: Truy vấn trong cơ sở dữ liệu MySQL. Truy vấn con và cập nhật dữ liệu

□Truy vân con trà vê danh sách các giá

• Là truy vấn con mà kết quả trả về là tập hợp các giá trị.

• Toán tử IN hoặc NOT IN thường được dùng trong trường hợp này vì nó so sánh một phần tử có thuộc (hay không thuộc) tập hợp các giá trị hay không.

Truy vấn con

Lọc ra các sữa có trọng lượng bằng với trọng lượng lớn nhất này

SELECT Ma_sua, Ten_sua, Trong_luong

FROM sua

WHERE Trongjuong = (SELECT MAX(Trong luong) FROM sua)

 

docx 19 trang kimcuc 6680
Bạn đang xem tài liệu "Bài giảng Lập trình viên mã nguồn mở PHP - Module 3, Bài 3: Truy vấn trong cơ sở dữ liệu MySQL. Truy vấn con và cập nhật dữ liệu", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Lập trình viên mã nguồn mở PHP - Module 3, Bài 3: Truy vấn trong cơ sở dữ liệu MySQL. Truy vấn con và cập nhật dữ liệu

Bài giảng Lập trình viên mã nguồn mở PHP - Module 3, Bài 3: Truy vấn trong cơ sở dữ liệu MySQL. Truy vấn con và cập nhật dữ liệu
Trường ĐH Khoa Học Tự Nhiên Tp. Hồ Chi Minh
TRUNG TÂM TIN HỌC
LTV MÃ NGUÒN MỜ PHP
Module 3 - Bài 3: Truy vấn trong CSDL MySQL — Truy vấn con & Câp nhât dữ liêu
Ngành LT & CSDL
www.t3h.vn
2014
SOJ't
CMC
xMediaFire
Truy vấn con
□ Khái niệm
■
Truy vấn con là một câu lệnh truy vấn SELECT được lồng vào các câu lệnh truy vấn khác nhằm thực hiện các truy vấn tính toán phức tạp.
Lưu ý: khi dùng truy vấn con cần tuân theo các quy tắc
Truy vấn con phải được đặt trong cặp ngoặc đơn 0
Truy vấn con chỉ có thể tham chiếu đến 1 cột hoặc 1 biểu thức.
Kết quả trả về của truy vấn con có thể là một giá trị hoặc một danh sách các giá trị.
LTV Mã nguồn mờ PHP - Module 3
Truy vấn con
Lọc ra các sữa có trọng lượng bằng với trọng lượng lớn nhất này
SELECT Ma_sua, Ten_sua, Trong_luong
FROM sua
WHERE Trongjuong = (SELECT MAX(Trong luong) FROM sua)
Masua
Ten_sua
Trong Juong
DL0002
Canximex
900
DS0001
Daisy không Đường
900
MJ0001
Enfa Mama A*
900
MJ0004
EnfaPro
900
MJ0005
EnfaPro A*
900
VJIM006
Dielac Alpha
900
VNM012
Dielac Mamma
900
pg
LTV Mã nguồn mớ PHP - Module 3
MC
VMediaFire
/~1IIMIICII lie
□Truy vân con trà vê danh sách các giá
Là truy vấn con mà kết quả trả về là tập hợp các giá trị.
Toán tử IN hoặc NOT IN thường được dùng trong trường hợp này vì nó so sánh một phần tử có thuộc (hay không thuộc) tập hợp các giá trị hay không.
LTV Mã nguồn mờ PHP - Module 3
6
MC
VMediaFire
lift
□ Làm việc với toán tử so sánh
• Các toán tử so sánh thường được sử dụng trong truy vấn con có thể là: >, >=, <, <=, =,
• Lưu ý: Thông thường các toán tử so sánh được sử dụng khi dùng truy vấn con trả về một giá trị
LTV Mã nguồn mờ PHP - Module 3
Truy vấn con
□ Làm việc với toán tử truy vấn con
Các toán tử truy vấn con thường hay sử dụng là: ANY, SOME, ALL, IN, NOT IN, EXISTS, NOT EXISTS,
Lưu ý: thông thường các toán tử truy vấn con được sừ dụng khi dùng truy vấn con trả về tập hợp các giá trị.
Quỵ tắc:
IN =ANY
LTV Mã nguồn mờ PHP - Module 3
Truy vấn con
□ Làm việc với toán tử truy vân con
Sử dụng từ khóa EXISTS hoặc NOT EXISTS để kiểm tra tính tồn tại (hay không tồn tại) của dữ liệu.
Sau EXISTS hoặc NOT EXISTS là câu lệnh truy vấn con mà kết quả trả về là một tập hợp trống hoặc có phần tử
11
LTV Mã nguồn mờ PHP - Module 3
Insert
□ Câu lệnh INSERT INTO được dùng để thêm mới một hay nhiều dòng dữ liệu vào bên trong một bảng
□ Có thể thêm vào bảng:
Giá trị trực tiếp
Dữ liệu lấy từ các bảng khác
(GV demo cách thêm dữ liệu bằng GD đồ học cho HV)
14
LTV Mã nguồn mờ PHP - Module 3
Insert
□ Giá trị trực tiếp
Cú pháp:
INSERT INTO Tên_bảng [(Ds các cột trong bảng)]
VALUES (Danh_sách_các_giá_trị)
Ví dụ: Thêm mới một khách hàng có các thông tin sau vào bảng khach_hang:
■Mã khách hàng: kh007, Họ tên: Phan Nam, Phái: 0 (nam), Địa chỉ: 12A - Pasteur - Q.1 - TP. HCM, Điện thoại: 8497625, Email: phannam@yahoo.com
15
LTV Mã nguồn mờ PHP - Module 3
Insert
□ Lấy dữ liệu từ các bảng khác
Bằng cách kết hợp giữa INSERT và SELECT
Cú pháp:
INSERT INTO Tên_bảng
[(Danh_sách_các_cột_cần_thêm_dữjiệu)]
SELECT Danh_sách_các_cột_lấy_dữ_liệu
FROM Tên_bảng_nguồn
WHERE Điều_kiệnjọc_dữ_liệu
Danh_sách_các_cột_cần_thêm_dữ_liệu và
Danh_sách_các_cột_ láy_dữ_liệu phải tương ứng nhau
17
LTV Mã nguồn mờ PHP - Module 3
Insert
•Ví dụ: Thêm vào bảng ct_hoadon_07_2013 (bảng chưa có dữ liệu) các chi tiết hóa đơn bán sữa của tháng 07/2013
INSERT INTO ct_hoadon_07_2013
SELECT ct_hoadon.So_hoa_don, Ma_sua, Sojuong, Don_gia
FROM ct_hoadon INNER JOIN hoa_don ON ct_hoadon.So_hoa_don = hoa_don.So_hoa_don
WHERE month(Ngay HD) = 7 AND year(Ngay hd)=2013
LTV Mã nguồn mờ PHP - Module 3
1B
LTV Mã nguồn mờ PHP - Module 3
19
MC
VMediaFire
IIẾ
Update
□ Lấy dữ liệu từ các bảng khác
Kết hợp giữa UPDATE và SELECT để lấy dữ liệu từ bảng khác cập nhật vào bảng
Cú pháp:
UPDATE Tên_bảng
SET Tên_cột = (SELECT ... FROM ... WHERE ...)
WHERE Điều_kiện_cập_nhật
23
LTV Mã nguồn mờ PHP - Module 3
Update
•Ví dụ: Cột đơn giá trong bảng ct_hoadon chưa có giá trị, hãy cập nhật đơn giá cho cột này với giá trị được lấy từ cột đơn giá của bảng sữa.
UPDATE Ct hoadon
Maboadon
Ua_wa
Sojuong
Dongia
OM1
VMJ012
4
103500
DM1
AB0M1
2
1070M
DM2
DL0M1
2
4 IMO
DM2
IÁXOC4
3
198000
DM1
U0M1
12
41M0
DM3
A0OM1
1
107000
DOM
HTFM1
10
48500
OOM
VI wo 12
s
1035M
DM3
D1OOO6
11
11500
DOM
AB0M1
15
107000
DM2
MJ0M1
5
196000
DM1
KTF0C2
8
45000
DM3
AB0M3
17
87M0
OOM
ARKC2
25
1070M
SET Don_gia = (SELECT Don_gia FROM sua WHERE ct_hoadon.Ma_sua = sua.Ma sua)
LTV Mã nguồn mớ PHP - Module 3
24
MC
MC

File đính kèm:

  • docxbai_giang_lap_trinh_vien_ma_nguon_mo_php_module_3_bai_3_truy.docx
  • pdfttth_dh_khtn3_03_541348.pdf