تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] استفسار عن مشكلة في كود لايجاد العملاء الغير موجودين بجدول الدفع
#11
(18-09-18, 11:26 AM)asemshahen5 كتب : تفضل أرجو أن يكون هذا المطلوب .

تسلم 
نفعت معايا الطريقة دى
الرد }}}
تم الشكر بواسطة: elgokr , asemshahen5
#12
السلام عليكم 
الاخوة الكرام 
تواجهنى مشكلة هنا اننى عند استخدامى للفلترة عن طريق SELECT DISTINCT
PHP كود :
NOT IN (SELECT DISTINCT CID FROM dbo.ClinetPay AS ClinetPay_1
المشكلة هى انه ان وجد ID  موجود بجدول الدفع لا يظهره على الرغم ان العميل له فواتير اخرى غير مسددة

المطلوب هو اريد كل الفواتير الغير مسددة للعميل 
ClinetPay : جدول العملاء المسددين للفواتير
Monthly : جدول فواتير العميل الشهرية 
مرفق نسخة  من قاعدة البيانات 
احدهما Bak والاخرى Schema and data


الملفات المرفقة
.zip   Test.zip (الحجم : 348.63 ك ب / التحميلات : 11)
الرد }}}
تم الشكر بواسطة: elgokr , elgokr
#13
(18-10-18, 10:39 PM)ahmedmansour كتب : السلام عليكم 
الاخوة الكرام 
تواجهنى مشكلة هنا اننى عند استخدامى للفلترة عن طريق SELECT DISTINCT
PHP كود :
NOT IN (SELECT DISTINCT CID FROM dbo.ClinetPay AS ClinetPay_1
المشكلة هى انه ان وجد ID  موجود بجدول الدفع لا يظهره على الرغم ان العميل له فواتير اخرى غير مسددة

المطلوب هو اريد كل الفواتير الغير مسددة للعميل 
ClinetPay : جدول العملاء المسددين للفواتير
Monthly : جدول فواتير العميل الشهرية 
مرفق نسخة  من قاعدة البيانات 
احدهما Bak والاخرى Schema and data

؟
الرد }}}
تم الشكر بواسطة: elgokr
#14
السلام عليكم 
هل من حل لطلبي
الرد }}}
تم الشكر بواسطة: elgokr
#15
(18-10-18, 10:39 PM)السلام عليكم هل من حل كتب : السلام عليكم 
الاخوة الكرام 
تواجهنى مشكلة هنا اننى عند استخدامى للفلترة عن طريق SELECT DISTINCT
PHP كود :
NOT IN (SELECT DISTINCT CID FROM dbo.ClinetPay AS ClinetPay_1
المشكلة هى انه ان وجد ID  موجود بجدول الدفع لا يظهره على الرغم ان العميل له فواتير اخرى غير مسددة

المطلوب هو اريد كل الفواتير الغير مسددة للعميل 
ClinetPay : جدول العملاء المسددين للفواتير
Monthly : جدول فواتير العميل الشهرية 
مرفق نسخة  من قاعدة البيانات 
احدهما Bak والاخرى Schema and data
الرد }}}
تم الشكر بواسطة: elgokr
#16
وعليكم السلام ورحمة الله وبركاته

تذكر اخى كود الاستعلام التالى
كود :
SELECT * FROM dbo.Monthly WHERE ClinteID NOT IN (SELECT DISTINCT CID FROM dbo.ClinetPay AS ClinetPay_1)

حيث ان جدول ClinetPay يحتوى على كلاً من 
PHP كود :
1 و 2 و 9 و 12 

فعند اتمام تنفيذ الاستعلام سيتم عرض جميع الارقام 
تجنباً عرض كلاً من الارقام التى تم ذكرها بالاعلى

والسبب انك تستخدم 
كود :
NOT IN

وهى تعنى عرض جميع الاستعلام مع شرط ان يكون الرقم غير موجود بجدول ClinetPay
طيب لو كنت محتاج عرض العكس ان يكون الاقام هى ما تتواجد بداخل هذا الجدول

ليقوم بعرض نتائج الاستعلام طبقاً للارقام فهنا ستحتاج ان تجعل كود الاستعلام بهذا الشكل
كود :
SELECT * FROM dbo.Monthly WHERE ClinteID IN (SELECT DISTINCT CID FROM dbo.ClinetPay AS ClinetPay_1)

قم بتجربة كلاً من الاستعلام حتى توضح لك شكل النتائج

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: ahmedmansour
#17
السلام عليكم 

اخى الفاضل حيث ما شرحت لى قمت بالتجربة لكن نفس الموضوع 
دعنى اوضح لك الفكرة مرة احرى 
عند استعلامى من داخل قاعدة البيانات عن العميل رقم 1  فى جدول الفواتير يضتح لى ان العميل مسجل له 3 فواتير كما هو مبين بالصورة


و بالاستعلام داخل جدول المدوفعات يتضح لى ان العميل لم بدفع الا شهر 8/2018 
ومتبقى علية شهرين  هما 
9/2018 , 10/2018 


و بتعديل جملة الاستعلام كما وضحت لى اخى الفاضل 
يظهر فى الاستعلام جميع الشهور المسددة والغير مسددة




و بالرجوع الى الاستعلام الاساسي  لا يظهر العميل على اساس ان جملة SELECT DISTINCT ستستثني جميع الارقام المكررة 


المطلوب 
هو طريقة عرض العميل الغير مسدد عن شهر معين 
اتمنى ان تكون الفكرة وصلت 
الرد }}}
تم الشكر بواسطة:
#18
السلام عليكم 
اتمني أن أجد من يساعدني
الرد }}}
تم الشكر بواسطة:
#19
السلام عليكم 

هل من حل لطلبي

الرد }}}
تم الشكر بواسطة:
#20
جرب هذا :
كود :
SELECT        dbo.Clintes.ClinteID, dbo.Clintes.Clinte_Name, dbo.Monthly.moth
FROM            dbo.Clintes INNER JOIN
                        dbo.ClinetPay ON dbo.Clintes.ClinteID = dbo.ClinetPay.CID RIGHT OUTER JOIN
                        dbo.Monthly ON dbo.ClinetPay.Moth <> dbo.Monthly.moth AND dbo.Clintes.ClinteID = dbo.Monthly.ClinteID
WHERE        (dbo.Clintes.Clinte_Name IS NOT NULL)
الرد }}}
تم الشكر بواسطة: elgokr , ahmedmansour



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم