View Full Version : نوشتن یک اسکریپت برای تاریخ
taknavaz123
پنج شنبه 22 خرداد 1393, 10:49 صبح
با سلام.
یه table رو فرض کنید که یک ستون به نام flag داره که توش مقادیر 1 یا 2 وجود داره.یک ستون هم به نام date که توش روزهای مختلف ماهه
حالا میخوام بهش یه دستور آپدیت بدم.
با این مضمون
update جدول set کن تاریخ رو = تاریخ فلاگهای 1
where فلاگت 2 بود.
چه جوری اون قسمت بعد از مساوی رو بنویسم تا بره دقیقا فلاگهای یک رو نگاه کنه.هر تاریخی که داره .دقیقا همون تاریخو بزاره برای فلاگهای 2.
یعنی مثلا تو فلاگهای 1 تاریخ 93/1/1 و 93/1/2 و 93/1/3 هست.ولی تو تاریخ فلاگهای 2 همه تاریخشون 93/1/10.چه جوری تاریخهای فلاگ 2 تراز بشن با تاریخ فلاگ یک.یعنی اونها هم بشن 93/1/1 و 93/1/2 و 93/1/3
taknavaz123
سه شنبه 03 تیر 1393, 09:50 صبح
سلام مجدد.آیا راهی وجود نداره؟؟؟
pezhvakco
سه شنبه 03 تیر 1393, 10:50 صبح
update جدول set کن تاریخ رو = تاریخ فلاگهای 1
where فلاگت 2 بود.
یعنی مثلا تو فلاگهای 1 تاریخ 93/1/1 و 93/1/2 و 93/1/3 هست.ولی تو تاریخ فلاگهای 2 همه تاریخشون 93/1/10.چه جوری تاریخهای فلاگ 2 تراز بشن با تاریخ فلاگ یک.یعنی اونها هم بشن 93/1/1 و 93/1/2 و 93/1/3
سلام
اگه درست فهمیده باشم، جدول شما =
Flag
Date
1
93/01/01
1
93/01/02
1
93/01/03
2
93/01/10
2
93/01/10
2
93/01/10
اگه خواسته شما اینه که به تعداد ردیف های فلگ 1 ردیف باشه با فلگ 2 =
delete from Table01
where Flag = 2;
insert into Table01
(Flag ,Date)
select 2 AS Flag ,Date
from Table01
where Flag = 1;
taknavaz123
شنبه 07 تیر 1393, 09:34 صبح
سلام
اگه درست فهمیده باشم، جدول شما =
Flag
Date
1
93/01/01
1
93/01/02
1
93/01/03
2
93/01/10
2
93/01/10
2
93/01/10
اگه خواسته شما اینه که به تعداد ردیف های فلگ 1 ردیف باشه با فلگ 2 =
delete from Table01
where Flag = 2;
insert into Table01
(Flag ,Date)
select 2 AS Flag ,Date
from Table01
where Flag = 1;
این دستور رو میشه به صورت update بنویسید؟
چون جدول فوق علاوه بر ستونهای ذکر شده ستونهای دیگه ای هم دارن که عملا با دیلیت و اینسرنت اون داده ها از دست میره.
من فقط میخوام داده های ستون دیتا متناسب با فلاگ تغییر کنه
pezhvakco
شنبه 07 تیر 1393, 11:02 صبح
یکم توضیحات شما کم است .
اگه ستون های دیگه ای هم است این بروز رسانی تاریخ برای کدوم ردیف جدول باید انجام شود .
شما نوشته اید : " چه جوری اون قسمت بعد از مساوی رو بنویسم تا بره دقیقا فلاگهای یک رو نگاه کنه.هر تاریخی که داره .دقیقا همون تاریخو بزاره برای فلاگهای 2. "
1) اگه تعداد ردیف های با فلگ 1 و 2 یکی نباشه
2) کدامین ردیف های با تاریخ با فلگ 1 را در کدامین ردیف های با فلگ 2 ویرایش نماید
اگر می خواهین با دستور UpDate کار کنید باید شرط های دیگری هم داشه باشید .
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.