PDA

View Full Version : select کردن سطرهای update شده



mtahmasebi
یک شنبه 15 مرداد 1391, 23:52 عصر
با سلام خدمت دوستان

من احتیاج به یه کوئری دارم که توسط اون تعدادی از سطرهای جدول update بشن(مقدار یکی از فیلدهاشون تغییر کنه)، سپس سطرهای update شده (توسط دستور select یا هر دستور دیگه) به من برگردونده بشن. بهترین و مختصر ترین کوئری چیه؟

ممنون...

حمیدرضاصادقیان
دوشنبه 16 مرداد 1391, 11:05 صبح
سلام.
دوست عزیز به این شکل درخواست کد کردن ممنوع هست.
ساختار جداولتون چیه؟
خودتون چه کارهایی انجام دادید؟

mtahmasebi
سه شنبه 17 مرداد 1391, 01:21 صبح
سلام.
دوست عزیز به این شکل درخواست کد کردن ممنوع هست.
ساختار جداولتون چیه؟
خودتون چه کارهایی انجام دادید؟


فرض کتید یه جدول به نام myTable داریم که یکی از فیلدهای اون status هست. حال با استفاده از کوئری

update top10 myTable set status=1

فیلد status تعدادی از رکوردهای جدول رو تغییر می دیم. حال من می خوام بدونم کدوم رکوردها توسط این کوئری آپدیت شدن.
شاید راه حل ترکیب این دستور آپدیت با به دستور select باشه. اما هرکاری می کنم جواب نمیده.

ممنون میشم اگه دوستان با تجربه کمک کنن.

baktash.n81@gmail.com
سه شنبه 17 مرداد 1391, 07:49 صبح
خوب رکودهای Update شده رو می تونی با کمک Output بدست بیاری ...


DECLARE @MYTABLEVAR TABLE( USERID SMALLINT,
USERNAME VARCHAR(50),
MODIFIEDDATE DATETIME);


DELETEFROM USERS
OUTPUT DELETED.USER_ID,DELETED.USERNAME,GETDATE()INTO @MYTABLEVAR

SELECT*FROM USERS
SELECT*FROM @MYTABLEVAR


این مروبط به Delete برای Update هم مثل همینه فقط به جای Deleted از Inserted استفاده کنید ...

اینم لینک راهنما (http://msdn.microsoft.com/en-us/library/ms177564.aspx)