ورود

View Full Version : آپدیت مقادیر یک فیلد با کوئري



elina-a
چهارشنبه 27 آذر 1392, 19:53 عصر
سلام
نميدونم بخش درستی رو انتخاب کردم یا نه
من یه فیلد دارم توی یه جدول که میخام مقادیر این فیلد با یک کوئری آپدیت بشه؟باید چه کار کنم؟یعنی برای هر رکورد مقدار اون فیلد،با یه رکورد دیگه فرق داره

update staff.QuitReason set QuitReasonId=
select Q.Id from Staff.QuitReason LEFT OUTER JOIN Basic.QuitReason as Q
ON Staff.QuitReason.QuitReasonTitle=Q.Title

ميدونم این مساوی اشتباهه،جاش چی باید بذارم؟

tiphooo
چهارشنبه 27 آذر 1392, 23:07 عصر
update staff.QuitReason set QuitReasonId=Q.Id FROM (SELECT Title,Id FROM QuitReasonTitle )Q WHERE Q.Title=Staff.QuitReason.QuitReasonTitle

elina-a
شنبه 30 آذر 1392, 13:40 عصر
ميشه يه كم توضيح بدید در موردش،یه کم کوئري كه نوشتيد بالا پایین کردم،جواب داد،اما نمیدونم چه جوری کار میکنه؟این Q بعد پرانتز رو چه جوری میشناسه؟چون ما جایی as ننوشتیم،این قسمت
FROM (SELECT Title,Id FROM QuitReasonTitle )Q
یعنی چی؟

حمیدرضاصادقیان
شنبه 30 آذر 1392, 22:18 عصر
سلام.
اون Q یک alias برای Derived Table هست و برای تعریف Alias میتونید حتی از as هم استفاده نکنید و بدون استفاده از as یک alias تعریف کنید