الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الجمع في الاستعلامات

مغلق
بدأه البسيسي في 3 يوليو 2006 · 10 رد · 1,578 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي ثلاث جداول

وضعت لهم استعلام يقوم بجمع حقول الجداول لكن وجدة انه يعطيني مجاميع غير صحيحة

هل السبب في طريقة تصميم الاستعلام ام لهذه الطريقة استعلام مختلف

افيدونا جزاكم الله الف خير

_____.rar

#2

افتح الاستعلام في وضع التصميم واعمل علاقة بين الاسم من الجدول الأول والاسم من الجدول الثاني وكذلك بين الثاني والثالث ثم جرب

عبدالله عطيف

#3

اخي الكريم:

اشكرك على هذه المعلوملة

جربتها مع الجداول فضبطت

لكن مع الاستعلامات لم تنفع

فما هو الحل مع الاستعلامات كما في المرفق التالي

_____.rar

#4

ما ذكره الاستاذ عبدالله عطيف صحيح

فكما عملت في الجداول قم بنفس العمل في الاستعلام

بمعنى قم بتوصيل الاسماء مع بعضها بعلاقة رأس برأس

انظر المثال المرفق

SUM.rar

#5

اختي الكريمةزهــــــــــــــــــــــــــــــــــــــــــــــــــــــــرة

اشكركي على الرد السريع

فعلا حصلت على مجاميع صحيحة عند ربط الاستعلامات بعلاقة لكن:

صادفتني مشكلة بسيطة وهي :

اذا كان مجموع احد الحقول يساوي صفر يعطيني في الاستعلام سجل فارغ لا يحوي على ايت ارقا ما حتى ولو كانت هناك مجاميع في الحقول الاخرى

او تم حذف معلومات احد الجداول بالكامل هم نفس المشكلة

#6

[

size=3]جزاكم الله خيراً كثيرا

استفدنا كثيراً من الحل

شكراً لطارح السؤال

شكراً لمن اجتهد في الحل

شكراً للأخت زهره

:D

:D

:D

#7

في هذه الحالة نستخدم الدالة ()NZ

وفائدة هذه الدالة انها عندما لا تجد قيمة في الحقل فإنها سوف تعوض عنها بقيمة صفر ( وهو عدد صحيح ) بدلا من قيمة خالية Null

وسيكون التعبير الخاص في الاستعلام لحقل السحب الخاص بـ احمد

A: Sum(NZ([AHMED]![SHB];0))

طبعا قمت بتغيير الاسماء العربية للانجليزية لان التعبير سوف يحدث به لخبطه ولكن المجاميع صحيحة وكذلك التسميات

انظر المثال

SUM_UP.rar

ملاحطة : يجب ان تكون الاسماء متطابقة في كل الجداول الثلاثة فما تضعه في الاول لابد من وضعه في كل الجداول لانه يوجد علاقه بين الجداول والا لن تظهر لك المجاميع بالشكل الصحيح

تم تعديل هذه المشاركة بواسطة zahrah في 3 يوليو 2006 في 22:38

#8

اختي الكريمة زهــــــــــــــــــــــــــــــــــــــــرة

اشكركي على هذا الرد الجميل

لكن بقيت نفس المشكلة

انا قمت بحذف معلومات احد الجداول وفتحت الاستعلام وجدته سجل فارغ نفس المشكلة السابقة

هل ما فعلت انا كان خطأ ام ان الدالة لا تفي بالغرض في هذا الموضوع

ولكي جـــــــــــــــــــــزيل الشكـــــــــــــــــــــــــر

#9

الا يوجد من يرد

#10

اخي الفاضل

نعم ان ما فمت به خطا حيث لا يمكنك في هذه الحالة حذف الاسماء لانها مرتبطه ببعضها ولكن يمكنك حذف القيم فقط

انظر الان سنبقي على الاسماء كما هي في الجداول الثلاثة ونقوم بحذف القيم فقط طبعا اذا كانت القيمه خالية في السجل وهي رقميه فبالتأكيد سيكون مكانها رقم صفر وهو القيمة الافتراضية للحقل .

الان قم بتعبئة بعض الحقول من جدول احمد وحسن ومحمد بشكل مختلف بمعنى ضع في كل جدول قيمة معينه ثم اذهب للاستعلام وانظر النتيجه .

الخطأ الذي يحدث لديك انك تقوم بحذف سجل كامل والاستعلام مبني على المجموع للحقول الثلاثة دفعة واحدة بواسطة الدالة SUM فبالتأكيد عند تشغيل الاستعلام يقوم بالنظر للقيم وعندما يجد قيم غير متطابقة من ناحية الاسماء فإنه يعتبر القيمه للمجموع Null يعني خاليه ولهذا ترى ان الاستعلام يظهر لك كله خالي من القيم لانه من شروط الدالة SUM انه اذا وجد عنصر تحكم محسوب في الاستعلام به قيمه خالية فإن بقية القيم تكون خالية ولهذا نعوض عن هذا النقص بواسطة استخدام الدالة NZ التي تعطي قيمة مقدارها صفر ( 0 ) تعويضا عن الحقل الفارغ Null

اتمنى ان تقوم بدارسة الدوال والمجاميع والاستعلامات فهي متوفره من خلال برنامج الاكسيس عن طريق المساعدة Help فكل ما عليك عندما تواجه مشكله ولا تعرف لها اجابة فكل ما عليك هو ضغط المفتاح F1 من لوحة المفاتيح وانت بداخل برنامج الاكسيس ثم اكتب اي كلمة حول المشكلة سواء بالعربي او الانجليزي وستأتيك الاجابات مباشرة سواء كنت متصلا بالانترنت او بدون اتصال .

#11

اشكركي اختي الكرية على هذا التوضيح الجميل والرائع

وهو حلا للمشكلة التي اواجهها

والف الف الف شكر لكي

هذا الموضوع مغلق.

مواضيع مشابهة