PDA

View Full Version : سوال: مشکل در الحاق جدول ها



ghafoori
سه شنبه 25 فروردین 1388, 10:30 صبح
من در برنامه ام دارای جدول های زیر هستم
جدول بیماری شامل فیلدهای 1.کد بیماری 2.نام بیماری
جدول جراحی شامل 1.کد جراحی 2.نام جراحی
جدول فرد شامل 1.کد فرد 2.نام فرد
جدول نوع سابقه شامل 1.کد سابقه 2.نام سابقه این جدول شامل سه رکورد ثابت 1.بیماری 2.جراحی 3.بیماری وجراحی است
جدول سابقه بیماری وجراحی شامل 1.کد سابقه 2.کد فرد 3.کد بیماری 4.کد جراحی 5.کد نوع سابقه
حالا من می خواهم کوئری شامل این ستون ها داشته باشم
1.کد سابقه 2.کد فرد 3.نام فرد 4.کد بیماری 5.نام بیماری 6.کد جراحی 7.نام جراحی 8.کد سابقه 9.نام سابقه
خوب این کوئری راحت با کوئری بیلدر ساخته می شود شامل الحاق همه این جدول ها با هم اما مشکل از اینجا اغاز می شود که
در جدول سابقه کد بیماری یا کد جراحی خالی خواهند بود اما کوئری بالا وقتی جواب می دهد که تمام فیلد ها پر باشند بعضی از رکوردها فیلد کد بیماری یا جراحی ان خالی است و حالا من یک کوئری می خواهم که این مشکل را نداشته باشد
البته من یک روش برای حل این مشکل دارم این است که برای رکوردهایی که فیلد کد بیماری یا جراحی ان خالی است کوئری های جداگانه بنویسم و نهایتا در برنامه سه جدول حاصله را در هم ادغام کنم و یک جدول بدست اورم اما دنبال یک کوئری هستم که این کار را داخل همان sql server انجام دهد
برای راحتی کار شما من یک بانک با جدول های بالا طراحی کردم و داده ها را داخل ان قرار دادم و یک stored procedures هم نوشتم که الحاق معمولی را انجام میدهد و ان را که اجرا کنید می بینید فقط یک رکورد می دهد
29947
با تشکر

رضا عربلو
سه شنبه 25 فروردین 1388, 16:52 عصر
.wysiwyg { FONT: 10pt tahoma, geneva, lucida, "lucida grande", arial, helvetica, sans-serif; BACKGROUND: #f5f5ff; COLOR: #000000 } P { MARGIN: 0px } .inlineimg { VERTICAL-ALIGN: middle } LEFT OUTER JOIN, RIGHT OUTER JOIN و یا FULL OUTER JOIN به شما کمک می کنند که در join تان فیلدهایی که در طرف دیگر Null هستند را نیز در نتیجه select تان بیاورید.