PDA

View Full Version : برقراری یک جوین در هنگام update



rezaei manesh
شنبه 20 آبان 1385, 17:51 عصر
سلام
من 2 تا جدول دارم که هر کدوم یک id و یک تاریخ و یک فیلد وضعیت به همراه تعدادی فیلد دیگه دارند
حالا من می خوام فیلد وضعیت رکورد های متناظر با id و تاریخ از جدول یک رو در جدول 2 بریزم چطوری ؟

roozkhosh
شنبه 20 آبان 1385, 20:35 عصر
اگه من درست متوجه سوالتون شده باشم فرمان
SELECT INTO
وجود دارد که مشکلتون را حل می کند.در ضمن شکل کامل دستور را در help نرم افزار sqlserver متوانید به طور کامل و با مثال های بسیار واضح پیدا کنید.
البته دستورات مشابه و ترکیبی از insert و select into وجود دارد که آنها هم کارهای مشابه را انجام می دهند.

AminSobati
شنبه 20 آبان 1385, 21:51 عصر
UPDATE T2 SET Col1=T1.Col1, Col2=T1.Col2, ...
FROM T2 JOIN T1 on T1.ID=T2.ID

rezaei manesh
یک شنبه 21 آبان 1385, 08:40 صبح
با تشکر از هر 2 شما

اگه من درست متوجه سوالتون شده باشم فرمان
SELECT INTO
وجود دارد که مشکلتون را حل می کند.در ضمن شکل کامل دستور را در help نرم افزار sqlserver متوانید به طور کامل و با مثال های بسیار واضح پیدا کنید.
البته دستورات مشابه و ترکیبی از insert و select into وجود دارد که آنها هم کارهای مشابه را انجام می دهند.
اما من استفاده از این دستورات رو بلدم منظور من این طوری نبود منظور من دقیقا اون چیزی بود که آقا امین گفتند که با کمب تغیرات به هدفم رسیدم
با سپاس فراوان

rezaei manesh
یک شنبه 21 آبان 1385, 16:36 عصر
سلام
آقا من این کد رو مطابق دستور شما نوشتم اما نشد که؟
البته بگم 2 تا جدول از 2 تا دیتابیس هست


UPDATE ShiftItemDef
SET HOLIDAY = BAC_85.dbo.isholiday
FROM ShiftItemDef INNER JOIN
BAC_85.dbo.holidays ON BAC_85.dbo.holidays.DDate = ShiftItemDef.DBEGINDATE

این خطا رو میده؟
[Microsoft][ODBC SQL Server Driver][SQL Server]The column prefix 'BAC_85.dbo' does not match with a table name or alias name used in the query.

rezaei manesh
یک شنبه 21 آبان 1385, 16:42 عصر
درست شد درست شد
مشکل این بود که اسم جدول رو در خط 2 نذاشته بودم

very tanks

rezaei manesh
دوشنبه 22 آبان 1385, 15:11 عصر
با سلام مجدد
یه جوین دیگه هم دارم که به همین شکل هست اما این دفعه فقط با یک جدول سروکار دارم
یعنی می خوام اطلاعات رکورد های یک کد رو در درون یک کد دیگه بریزم
به ازای هر کد یک تاریخ هست
در کل برای هر کد 365 رکورد هست که تاریخ های اول تا پایان سال رو دارد. و یک فیلد یونیک که auto number هست

اینو چکارش کنم؟کیج شدم میدونم که باید در update از select استفاده کنم اما راهی نیست که برای هر کلون یک سلکت ننویسم اخه ستون هام زیاده و سلکت هام یکی؟!