PDA

View Full Version : نتیجه یک پرس و جو



raha_hakhamanesh
پنج شنبه 25 مرداد 1386, 09:55 صبح
ببخشید چون تالار مناسبتری پیدا نکردم
--------------------------------------------------------------------
در یک برنامه آموزشی جدولی به نام درس داریم که از جمله فیلدهای آن شماره درس(D_Num) و نام درس (D_Name) می باشد. همچنین یک جدول دیگر به عنوان پیش نیاز که دارای دو فیلد (ID) و (P_ID) نیز داریم .

دستور SQL ی رو نیاز داریم که بتونه نام درس،شماره درس،نام درس پیش نیاز،شماره درس پیش نیاز رو در یک پرس و جو بازگرداند.

متشکر

shahab_ksh
پنج شنبه 25 مرداد 1386, 11:30 صبح
از ترکیب دو جدول استفاده کن



Select * From tabel1,tabel2

omid1240
پنج شنبه 25 مرداد 1386, 12:18 عصر
چیزی که سریع به ذهنم رسید اینه :
1- ساخت یک view که جدول پیش نیاز را با ارتباط P_ID و D_Num با جدول درس پیوند بده و نام درس پیش نیاز بواسطه P_ID در بیاد
2- یک ارتباط بین جدول درس و این VIEW ساخته شده در یک تا نام خود درس هم پیدا بشه
__________________________________________________ ________
فقط با ارتباط ساده دو جدول نمی توان این پرس و جو را گرفت
ممکنه راه بهتر از این که گفتم هم باشه باید فکر کنم

raha_hakhamanesh
پنج شنبه 25 مرداد 1386, 12:26 عصر
فقط با ارتباط ساده دو جدول نمی توان این پرس و جو را گرفت
ممکنه راه بهتر از این که گفتم هم باشه باید فکر کنم

منتظر هستم

Hamid.Kad
پنج شنبه 25 مرداد 1386, 14:32 عصر
می تونید با دستور زیر مشکل رو حل کنید.

Select Crs.D_NUM,Crs.D_NAME,C2.D_NUM,C2.D_NAME from Crs
inner Join PishNiaz ON Crs.D_NUM = PishNiaz.ID
inner Join Crs C2 ON C2.D_NUM = PishNiaz.P_ID

Crs : جدول اطلاعات درسها
PishNiaz : جدول کد هر درس و پیشنیاز آن

raha_hakhamanesh
پنج شنبه 25 مرداد 1386, 17:04 عصر
با سلام و تشکر

جواب نداد
ضمنا فکر نمی کنم سطح نرمال هم به شرحی که ذکر شده به سطح FNF برسه.
بهر حال ممنون


================================
دوست من جناب حمید آقا
متشکر
با اندکی تغییر به مقصود رسیدم

raha_hakhamanesh
پنج شنبه 25 مرداد 1386, 17:06 عصر
دوست من جناب حمید آقا
متشکر

Hamid.Kad
پنج شنبه 25 مرداد 1386, 18:21 عصر
خواهش می کنم. خوشحال میشم بدونم اشکال کد در کجا بود.

dkhatibi
جمعه 26 مرداد 1386, 08:48 صبح
این کد اشکال دارد؟


Select * From tabel1,tabel2 where table1.D_num=Table2.P_ID

که البته در * می شه P_ID را دیگه ننوشت چون یکی هستند.

supporter
جمعه 26 مرداد 1386, 09:33 صبح
این کد اشکال دارد؟


Select * From tabel1,tabel2 where table1.D_num=Table2.P_ID

که البته در * می شه P_ID را دیگه ننوشت چون یکی هستند.

بله، دوست عزیز کد شما اشکال داره برای این که هم نام درس و هم نام پیش نیاز اون رو انتخاب کنید باید Table پیش نیازها رو 2 بار با Table درس ها JOIN کنید؛ مثل کدی که دوست عزیزمون Hamid.Kad نوشتند.