PDA

View Full Version : ارسال نتایج تکراری حاصل از اجرای کوئری به جدول



rasoulbarname
سه شنبه 24 مرداد 1391, 19:25 عصر
با عرض سلام خدمت مدیر محترم سایت وبقیه کاربران :ناراحت:
خواهش میکنم هر کسی میتونه جواب من رو بده همین روزا باید پروژه ام رو تحویل بدم وقت زیادی ندارم
من برای گرفتن خروجی از پروژه ام جداولم رو join کردم وخروجی ان را با دستورinsert به جدول temp فرستادم وبا هر بار اجرای این کوئری نتایج قبلی وجدید به temp ریخته میشود ودر نتیجه با فیلد های تکراری روبه رو میشوم
برای مثال
مثلا من دو جدول دارم به نام های
personnel = با فیلدهای ,...,family,name , (کد مدرسه)id , idm
profile= با فیلدهای idm, addres,name , tell
که با کد زیر join کردم ونتیجه را به جدول temp فرستادم ولی با هر بار اجرای کوئری نتایج تکراری را هم دوباره به جدول میفرستد
Insert into temp
select p.*,pr.address from personnel as p
inner join profile as pr on p.idm=pr.idm
سوال:چگونه کد را اصلاح کنم تا
1) میخواهم که فیلدهایی که در جدول temp قبلا وارد شده است را دیگر به temp نفرستدو درtemp فیلد تکراری وجود نداشته باشد وفقط فیلدهای جدید را بفرسته
2) میخواهم که اگر مشخصات یک کارمند مثلا ادرس ان تغییر کرد در جدول temp:افسرده::گیج: جای گزین قبلی شود
با این توضیفات در اس کیو ال چه کدی می توانم بنویسم
ممنون میشم اگه کدشو بنویسید چون مشکل سایت من فقط همین است و واقعا گیج شدم

ali ghaemi
چهارشنبه 25 مرداد 1391, 13:12 عصر
به نظر من اگه فقط در حد رفع مشکل پروژه می خواید ، بهتر است به جای درج در یک جدول ، از VIEW استفاده کنید که شامل عبارت JOIN شما است ، و با این کار هر دو مشکل شما حل می شه