PDA

View Full Version : ساختن یک query پیچیده!



A_1397
سه شنبه 06 تیر 1391, 10:53 صبح
اساتید عزیز لطفا راهنمایی بفرمایید. 10تا تیبل دارم که با 6تافیلد بهم دیگه مرتبط شده اند. تصویر ارتباط بین جداول رو میزارم:(هر رنگ از فلش ها نشان یک فیلد متفاوت است)
88763
که مسلما هر کدوم از جدول ها شامل چندین فیلد است. حالا مشکل من اینه که نمیتونم با این 10تاجدول و ارتباطاشون queryبسازم که مثلا اگه table1.field1="hello" بیاد و فیلدهای هر10تاجدول رو باتوجه به این شرط برگردونه.:گیج: امیدوارم منظورم رو واضح بیان کرده باشم.

baktash.n81@gmail.com
سه شنبه 06 تیر 1391, 14:56 عصر
خوب شما برای بدست آوردن همه فیلد های مرتبط با این رکورد باید جداول رو باهم Join کنید ... در شرایط مختلف ممکنه لازم باشه از Right یا Left join هم استفاده کنیم ... حالا شما Query که نوشتید رو بزارید تا مشکلشو رفع کنیم

A_1397
سه شنبه 06 تیر 1391, 18:02 عصر
خوب شما برای بدست آوردن همه فیلد های مرتبط با این رکورد باید جداول رو باهم Join کنید ... در شرایط مختلف ممکنه لازم باشه از Right یا Left join هم استفاده کنیم ... حالا شما Query که نوشتید رو بزارید تا مشکلشو رفع کنیم
راستش واسه این قضیه هنوزquery ننوشتم. قبلا از دستور join استفاده کردم ولی در حد ارتباط بین 3تا جدول نه 10 تا. و از Right یا Left join که فرمودین متاسفانه چیزی نمی دونم:خجالت:

Galawij
سه شنبه 06 تیر 1391, 23:12 عصر
قبلا از دستور join استفاده کردم ولی در حد ارتباط بین 3تا جدول نه 10 تا. و از Right یا Left join که فرمودین متاسفانه چیزی نمی دونم
سلام.
در مورد انواع Joinها این لینک (http://barnamenevis.org/showthread.php?324266-%DA%A9%D9%85%DA%A9-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-%D9%85%D8%B9%D9%86%DB%8C-%D9%88-%D9%85%D9%81%D9%87%D9%85%D9%88-%D8%A7%D9%86%D9%88%D8%A7%D8%B9-%D8%AC%D9%88%DB%8C%D9%86%D9%87%D8%A7-%D8%AF%D8%B1-%D8%AC%D8%AF%D9%88%D9%84) می تونه بهتون کمک کنه.
جداول شما مشکلی ندارن با انواع جوین ها جواب می ده.

A_1397
چهارشنبه 07 تیر 1391, 08:21 صبح
سلام.
در مورد انواع Joinها این لینک (http://barnamenevis.org/showthread.php?324266-%DA%A9%D9%85%DA%A9-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-%D9%85%D8%B9%D9%86%DB%8C-%D9%88-%D9%85%D9%81%D9%87%D9%85%D9%88-%D8%A7%D9%86%D9%88%D8%A7%D8%B9-%D8%AC%D9%88%DB%8C%D9%86%D9%87%D8%A7-%D8%AF%D8%B1-%D8%AC%D8%AF%D9%88%D9%84) می تونه بهتون کمک کنه.
جداول شما مشکلی ندارن با انواع جوین ها جواب می ده.
ممنون ولی مشکل اساسی من اینه که نمیدونم چطوری همزمان 10تا تیبل رو با هم جوین کنم. همه توضیحات در رابطه با دستور جوین برای 2تا تیبل هست نه 10تا:گیج:

حمیدرضاصادقیان
چهارشنبه 07 تیر 1391, 09:49 صبح
سلام.

Select T1.*,T2.*,T3.*,T4.*,... from table1 T1
Inner join table2 T2 on T1.id=T2.id
Inner join Table3 T3 on T3.id=T1.id
Inner join Table4 T4 on T4.id=T1.id
,....

Galawij
چهارشنبه 07 تیر 1391, 15:53 عصر
ممنون ولی مشکل اساسی من اینه که نمیدونم چطوری همزمان 10تا تیبل رو با هم جوین کنم. همه توضیحات در رابطه با دستور جوین برای 2تا تیبل هست نه 10تا
عزیز من یک view باز کن، جداولت را یکی یکی بکش توش و ارتباط ها را می تونی با کلیک راست کردن روی لوزی وسط خط ارتباطی به Left یا Right تنظیم کنی... فیلدهای مورد نیازت را هم می تونی تیک بزنی... بعد از کدش استفاده کن.