PDA

View Full Version : راهنمایی در پیاده سازی این Qurry



j_naroogha@yahoo.com
دوشنبه 03 بهمن 1390, 01:32 صبح
ببیند دوستان در یه قسمت از پروژه ام2 تا جدول دارم.
ج1.قسمت های داخلی سازمان (کد . عنوان)
ج2.نامه های مرجوعی (کد واحد مرجوعی .کد واحد دریافتی.کد نامه ....(سایر فیلدها مهم نیستن))

مشکل : هر دو فیلد {کد واحد ارجاعی .کد واحد دریافتی } در جدول 2 کلید خارجی هستند(کلید مقصدشان فیلد کد در جدول 1 می باشد).
در Qurry گرفتن دچار مشکل شدم.(میخام یه inner join انجام بدم که در جدول 2 به جای کد واحد ارجاعی و کد واحد دریافتی عنوان آنها رو نشون بده.)
select * from tb2
inner join tbl1
on tb2.vahederja=tb1.ID
inner join tb1 on tb1.vaheddaryaft=tb1.ID
خوب Sql نمیتونه یه جدول رو دوبار در join شرکت بده...(ظاهرا)
چاره ی کار چیه؟
مرسی از جوابتون پیشاپیش

shadi khanum
دوشنبه 03 بهمن 1390, 08:32 صبح
دوست عزیز بهتر بود سوالتون رو تو قسمت Sql میپرسیدین ولی به هر حال SQL خیلی قدرتمند تر از این حرفاست که نتونه یه جدول رو دو بار تو inner join شرکت بده! این کوئریتون یه مشکل کوچولو داره. باید واسه Select اولتون alias name بذارید و تو قسمت دوم از اون به جای Tbl1 استفاده کنید.
SELECT * FROM tbl1 INNER JOIN (Select * from tbl2 inner join tbl1 on tbl2.vahedejra = tbl1.id) AS TempTbl ON
TempTbl.vaheddaryaft = tbl1.ID

zarrinnegar
دوشنبه 03 بهمن 1390, 09:08 صبح
اینطوری میشه

select t1.* ,t2.onvan_name,t3.onvan_name from table2 as t1
inner join table1 as t2 on t1.vahed_marjoei = t2.code
inner join table1 as t3 on t1.vahed_daryafti = t3.code