Hôm nay mình đọc được câu hỏi của một bạn trong Group 'Lập trình viên' trên Facebook về SQL thấy rất hay, nói chung đối với mình nó không khó vì mình đã đi làm nhiều năm và dạng query kiểu này mình cũng làm rất nhiều rồi. Tuy nhiên mình thấy nó tương đối quan trọng và thường hay được sử dụng trong lập trình ứng dụng với database mà không phải ai cũng biết.
Vì vậy mình viết lời giải lên đây hi vọng các bạn Sinh viên chưa đi làm và chưa có nhiều kinh nghiệm về lập trình sql có thể tham khảo để phần nào tích thêm 1 chút kinh nghiệm nho nhỏ.
Câu hỏi:
Mọi người giúp em lấy CSDL từ trường DonGia để update vao trường TongTien vậy.
AI chỉ em cách viết Ham, Thu tục hay Trigger cho yêu cầu đó với.
Em cảm ơn ak?
Đáp án:
--CREATE
A STORE PROCEDURE FOR UPDATING [TONGTIEN].
CREATE PROCEDURE sp_UpdateTONGTIEN_PhieuXuat
AS
BEGIN
WITH t2 AS
(
select
a.MaPX, sum(c.DonGia) as TongTien
from
PhieuXuat a
join
ChiTietPhieuXuat b on a.MaPX
= b.MaPX
join
Xe c on c.MaXe = b.MaXe
group
by a.MaPX
)
UPDATE
t1
SET t1.TongTien = t2.TongTien
FROM PhieuXuat AS t1
INNER JOIN t2
ON t1.MaPX = t2.MaPX
END
--EXEC
STORE PROCEDURE
Exec
sp_UpdateTONGTIEN_PhieuXuat
--SEE
RESULT AFTER UPDATED.
select * from Xe
select * from
ChiTietPhieuXuat
select * from PhieuXuat
Trương Đức Tài