Tôi đang sử dụng SQL Server và đang cố gắng cập nhật các hàng từ trong cùng một bảng. Tôi muốn sử dụng bí danh bảng để dễ đọc.
Đây là cách tôi đang làm vào lúc này:
UPDATE ra
SET ra.ItemValue = rb.ItemValue
FROM dbo.Rates ra
INNER JOIN dbo.Rates rb
ON ra.ResourceID = rb.ResourceID
WHERE ra.PriceSched = 't8'
AND rb.PriceSched = 't9'
Có cách nào dễ dàng hơn / tốt hơn không?
1
Tôi thích sử dụng từ khóa tùy chọn "AS" (FROM dbo.Rates AS ra) để dễ đọc.
—
Robert S.
Tôi muốn sử dụng thích hợp ANSI JOIN
—
marc_s
FROM dbo.Rates ra INNER JOIN dbo.Rates rb ON ra.ResourceID = rb.ResourceID
- nó tiêu chuẩn, đó là rõ ràng hơn, và nó tránh được bất kỳ Tích Descartes không mong muốn bằng cách quên JOIN điều kiện (s) trong mệnh đề WHERE của bạn ....
marc_s có một điểm tốt; Tôi đã chỉnh sửa SQL để sử dụng cú pháp THAM GIA rõ ràng hơn
—
thực