Tôi có cấu trúc bảng này cho bảng dư:Làm thế nào tôi có thể thực hiện truy vấn này Sql Server đệ quy?
Và đây là quan điểm:
Tôi cũng có cấu trúc này cho bảng khoản:
Th là được chế độ xem cho bảng khoản:
Trước hết tôi cần phải có được giá trị số tiền cho một ngày cụ thể trong khoản Bảng:
với truy vấn này tôi nhận được số tiền 300 vào ngày 07/07/2016. Sau khi đạt được con số này, tôi cần phải thực hiện một truy vấn đệ quy với bảng cân bằng. Kết quả cuối cùng phải như sau:
Name abstractAmount addAmount Balance
----- -------------- --------- -------
Josep 100 400
Maria 50 350
George 60 410
Julianne 25 385
Đây là gì? Kết quả này đạt được lấy 300 từ bảng Số tiền, và cho mỗi hàng trong bảng Cân bằng, tôi thấy: Nếu abstracAmount trong hàng đầu tiên không trống, tôi tính toán toán học này: balance = (300 - abstractAmount), trong trường hợp trống và cột addAmount có các giá trị tôi thực hiện phép tính toán học này = (300 + addAmount) Trong phần còn lại của hàng tôi thực hiện tương tự nhưng tính toán không bằng 300, nằm trên số dư hàng cuối cùng: Ví dụ: Trong hàng đầu tiên, số dư là 400 vì số dư có giá trị nên tôi thực hiện phép tính này: 300 + 100 = 400 Trong hàng thứ hai, số dư là 350 vì abstractAmount không trống nên tôi lấy giá trị số dư cho hàng cuối cùng và thực hiện phép tính này: 400 - 50 = 350. Và điều tương tự cho phần còn lại của hàng, chỉ có hàng đầu tiên lấy bal giá trị ance cho bảng số lượng.
Ghi chú:
1. Luôn trừu tượng cộtTổng hợp trừ giá trị và giá trị tổng của cột addAmount.
Luôn một trong các cột này (abstractAmount | addAmount) sẽ trống.
Chỉ hàng đầu tiên lấy giá trị để tính toán cho bảng Số tiền, phần còn lại của hàng lấy giá trị cho hàng trước đó.
Tôi có thể nhận kết quả cuối cùng này bằng cách nào? :
Name abstractAmount addAmount Balance
----- -------------- --------- -------
Josep 100 400
Maria 50 350
George 60 410
Julianne 25 385
Tôi chấp nhận đề xuất, cảm ơn.
là posible để thêm vào truy vấn này khác truy vấn để có được giá trị số tiền (300) cho bảng lượng ?? –
Chắc chắn điều, thêm một ví dụ trong chỉnh sửa –
Tôi rất ấn tượng, câu trả lời của bạn có vẻ rất rõ ràng và đơn giản để hiểu, tôi nghĩ tôi cần làm điều gì đó phức tạp hơn, cảm ơn bạn rất nhiều vì đã giúp đỡ bạn. –