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)
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
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:
- bai_giang_lap_trinh_vien_ma_nguon_mo_php_module_3_bai_3_truy.docx
- ttth_dh_khtn3_03_541348.pdf