چگونه می‌توان UPDATE همراه با JOIN در SQL Server انجام داد؟

mohsen1 سال قبل
ارسال شده در
sql

فرض کنید دو جدول Orders و Customers داریم و می‌خواهیم فیلد Discount جدول Order را با استفاده از اطلاعات موجود در جدول Customers بروز کنیم و تخفیف مشتریان دارای تخفیف را روی فروش های اعمال کنیم در حالی که ارتباط بین این دو جدول از طریق فیلد ID و CustomerID برقرار است.

برای بروز کردن اطلاعات یک جدول بر اساس جدول دیگر بوسیله دستور UPDATE و JOIN در SQL Server، می توانیم از دستور SQL به شکل زیر استفاده کنیم:

      UPDATE O
SET O.Discount = O.Discount + O.OrderTotal * (1 - C.DiscountRate)
FROM Orders O
INNER JOIN Customers C
ON O.CustomerID = C.ID
WHERE C.DiscountRate > 0;

    

با ترکیب دستور UPDATE و JOIN می توانیم مقادیر را یک جدول را بر اساس مقادیر جدولی دیگر بروز کنیم و نیازی به اجرای دو دستور، یکی برای بدست آوردن مقادیر از یک جدول و دیگری برای بروز کردن جدول دیگر نداریم.

رای
0
ارسال نظر
مرتب سازی:
اولین نفری باشید که نظر می دهید!