ورود

View Full Version : join یک به چند و نمایش ا رکورد در خروجی



tefos666
چهارشنبه 20 خرداد 1394, 20:39 عصر
باسلام

خدمت دوستان گرامی ، با عرض پوزش بنده در حال نوشتن یک برنامه هستم که در آن در داخل یک گرید می خواهم بنا به دلیلی کلیه فیلدهای 3 تا جدول را بیاورم یعنی
select * table a
و
select * table b
و
select * table c

این 3 جدول با همدیگر ارتباط دارند

در جدول a مشخصات فرد وجود دارد
، در جدول b مشخصات محل سکونت و ... فرد
و در جدول c شماره حسابهای بانکی فرد

جدول a , b همیشه دارای رکورد هستند
ولی جدول c می تواند خالی باشد ، ضمن اینکه در جدول c همیشه تنها یکی از شماره حسابهای اون فرد پیشفرض می باشد

حالا بنده می خواهم در گرید کلیه فیلدهای هر سه جدول را کنار هم بیاورم ولی مشکل آنجا پیدا میشود که جدول c به ازای 1 فرد گاهی خالیست و گاهی می تواند بیش از یک رکورد داشته باشد ولی من می خواهم فقط آن رکوردی را از c در کنار a,b در یک سطر بیاورم که فیلد default آن برابر 1 باشد و همچنین می خواهم left join باشد

لطفا فایل ضمیمه را ببینید


خلاصه کلی اینک می خواهم بعد از join این 3 جدول می خواهم کل اطلاعات مثلا هر فرد در یک سطر را بیاورم و شماره حسابی که فیلد default آن 1 است برای فیلدهای جدول c لحاظ شود ، که اگر هم شماره حسابی نداشت باز خالی باشد و نمایش داده شود.
ممنون راهنمایی کنید

nazanin_asadi_1
شنبه 23 خرداد 1394, 12:22 عصر
نمی دونم جواب پیدا کردی یا نه
می تونی از این کد استفاده کنی (در حال حاضر )
SELECT a.*,b.*,c.*
FROM a
INNER JOIN b ON b.CustomerCode=a.CustomerCode
LEFT JOIN (SELECT * from c where Defult=1)C ON C.CustomerCode=a.CustomerCode