بتاريخ: 21 فبراير 201312 سنة comment_232789 السلام عليكم ورحمة الله و بركاتهأحتاج مساعدة أصحاب الخبره في قاعدة البيانات التي اتعامل معاهاقد صممت قاعدة بيانات لمستشفى من خلال برنامج Oracle application express مع oracle database 11g ولدي جدول يبين تضاف اليه جميع البيانات لكل مريضعند عمل استعلام لاتخراج فاتور المريض تظهر لي جميع الخدمات وأسعارها مثلا 3 أنواع من الأشعة نوعين من الأدويه و هكذاالمطلوب الآن عمل فاتوره تلخص ذلك بحيث تظهر الأشعه بمجموع الثلاثه خدمات الأدوية بمجموع الأدويه المطلوبه باالكامل فماهي طريقة استخدام الشرط where في هذه الحاله مع sum اذا كان سيتكرر مع كل نوع من الخدماتفكرت في SELECT sum(price) AS lab total WHERE orderid LIKE '%lab لكن كيف ساطبق هذا الشرط على جميع الخدمات الموجوده في استعلام واحد لاظهار تقرير واحد ؟؟؟ تقديم بلاغ
بتاريخ: 21 فبراير 201312 سنة comment_232792 السلام عليكم ...حسب مافهمت من الكيوري حقك انك تريد ان تجمع كل مااهو يعمل تحت قسم معين معا واخراجة معا كتقرير ..يجب ان تعرف ان هذا القسم لابد ان يشير الى رقم حتى يفصله عن قسم اخر مثلا الاشعة رقمه 30 والادوية 20 والفحوصات 40 select no,sum(price) as total from table_name group by no تقديم بلاغ
بتاريخ: 21 فبراير 201312 سنة كاتب الموضوع comment_232796 المشكله الان ان جميع الخدمات معرفة بكود في جدول واحدمثلااشعة الراس بكود rad01اشعة الصدر بكود rad02دواء معين بكود med01دواء اخر بكود med02وهكذا فتميز الخدمة بالكود الخاص بها وتشترك في الاحرف المكونه للكودفكما ذكرت سابقا اذا اردت استخراج التوتال للاشعه استطيع عمل ذلك باستعلام like '%rad' وهكذا لكن الان المشكله كيف استخدم ذلك لعمل ملخص يحتوي على عدد من ال subtotalمجموع كل نوع من الخدمات على حدا بحسب رقم الزياره في تقرير واحد تقديم بلاغ
بتاريخ: 21 فبراير 201312 سنة comment_232797 هذا الكود الذي المذكور انما هو مود تسلسلي لاغير لكن مثل صنف الاشعة سواء كانت عادية ام تشخصية سوف تدخل تحت صنف اسمه الاشعة وكذا بالنسبة للادوية ..مثلا : لدينا صنف الكتب هذا يحمل رقم 10 يندرج تحت هذا الصنف الكتب العلمية والاسلامية الثقافية يعني يجب ان يكون هنا علاقة بين تلك الاصناف طيب .. مين صمم الجدول ؟؟ انت ممكن تعطيني اسم الجدول واسماء اعمدته .. تقديم بلاغ
بتاريخ: 23 فبراير 201312 سنة كاتب الموضوع comment_232853 الان لدي مجموعه من الجداول ساوضحهاجدول table1 : orderitems columns: orderid ,description, subcategory,price table2: inpatientorder columns: episodeid, orderid, quantity table3: episode columns: episodeid ,mmr,physician,admission, discharge الجدول الاول يحتوي على جميع الخدمات المقدمه وكل مجموعه معينه لها subcategoryالجدول الثاني يحتوي على جميع الخدمات المقدمه للمريض وعددهاالجدول الثالث هو ملخص لزياره المريض يحتوي رقم ملف المريض ووقت تسجيل دخوله و خروجه و اسم الدكتور المختصالان اريد انا استخرج الملخص كالتاليorderid,description,quantity,price,totalبحيث تكون الفاتوره تعطي ملخص لكل الخدمات في المقدمة في episode معينه كيف استطيع استخدام شرط ال group by subcategory في هذه الحاله وكذلك عمل فلتره بحسب رقم ال episode المدخل من قبل المستخدم ؟اتمنى ان اكون اوضحت الفكرهملاحظة انا بصدد استخدام برنامج ireport designer لعمل الفاتوره القابله للطباعه ك pdf تقديم بلاغ
بتاريخ: 23 فبراير 201312 سنة comment_232861 السلام عليكم ...لقد رايتت تلك الجداول وماهي مطلوبك .. لكن الشي المهم ان تركيب الجداول وتصميمها فيها بعض الخطأ لان يمكن ان ان نتسخدم group by subcategory على نفس الجدول وفي نفس الوقت الاصناف مختلفه ..اذا لنعيد تركيب الجداول وفقا للمنطق الصحيح ...اولا جدول orderitem سوف يحتوي على الاعمدة الاتية :orderid,descrption,price,quantity ,subcategory_id,episodeidحيث ان هذان العمودان وهما ,subcategory_id,episodeid سوف يكونان foreign key اما orderid سوف يكون primary key الجدول الثاني : جدول subcatogory ويحتوي على عمودين فقط وهما :subcategory_id,subcategory_typeالجدول الثالث سوف يكون كما هو :episodeid ,mmr,physician,admission, dischargeمثلا الجدول الاول يحتوي على المحتويات الاتية :orderid ,descrption ,price ,quantity ,subcategory_id ,episodeid 1 1 4 1000 حبوب 1 1 2 3 2000 فحص 2 1 3 2 1500 اشعة 3محتويات الجدول الثاني subcatogory هي:subcategory_id ,subcategory_type ادوية 1 مختبرات 2 اشعة 3 عمليات جراحية 4محتويات الجدول الثالث episode episodeid ,mmr ,physician ,admission , discharge 12-12-2012 04-12-2012 احمد 3344 1 12-12-2012 04-12-2012 محمد 3343 2الان بعد ان اعلمنا الكل سوف يتضح لنا كيف نجلب المطلوب :سوف يكون الكيوري حسب ماطلبت هو :select orderid,descprtion,subcategory_type1=where subcatogory.subcatogory_id =orderitem.subcatogory_id and episodeidاما بالنسبة للمجموع الكلي اذا وضعناه هنا سوف يعطينا خطا لانه لايمكن ان يجمع ولدينا اكثر من عمود في الكيوري ..لذا يفضل ان تضعه في كيوري لحاله مثل الاتي : select ,sum(price*quatity) as total from emp group by episodeid;تسطيع ان تغير رقم المريض او بالرقم التسلسلي له على حسب المطلوب ارجو ان تكون قد وصلت الفكرة بشكل واضح تم تعديل 23 فبراير 201312 سنة بواسطة programmer_85 تقديم بلاغ
بتاريخ: 23 فبراير 201312 سنة comment_232867 السلام عليكمجرب هذه الطريقة: SELECT a.orderid, a.description, subcategory, SUM (a.price * b.quantity) total FROM orderitems a, inpatientorder b WHERE a.orderid = b.orderid GROUP BY a.orderid, a.description, SUBSTR (a.subcategory, 1, 3) ولكن من الأفضل كما ذكر الأخ في رده السابق يفضل وجود كود خاص لكل Category.بالتوفيق. تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.