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

مشكلة فى جملة select

بدأه mr.beshoy في 7 يناير 2011 · 7 رد · 689 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدى قاعدة بيانات بها جدولين

جدول يُسمى clientData به العواميد ( name - tele - speed - price )

و جدول آخر يُسمى inovice به العواميد (tele- date)

الجدول inovice به أرقام التليفونات التى تأتى تدفع الفاتورة آخر كل شهر

ما أريده هو عرض رقم التليفون الذى لم يدفع ، الاسم ، السرعة .

ال query الذى كتبته كالأتى :

          SELECT name,tele,speed from clientData where clientData.tele <> inovice.tele

و لكنه لم يرجع أى بيانات .

هل خطأ هذا ال query ??? لو خطأ ياريت توضيح الفكرة الصحيحة .

شكراً

#2

invoice وليس inovice هي الفاتورة بالانكليزية.

SELECT name,clientData.tele,speed from clientData,inovice where clientData.tele <> inovice.tele

لا تنسى أنك ستحتاج إلى تحديد التاريخ (من - إلى) حتى تحصل على الفواتير غير المدفوعة في شهر معين.

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#3

للأسف بردو ال query بتاعك نتيجته كانت :

أنه بيطلع كل record مرتين للعميل الذى دفع ، و العميل الذى لم يدفع !!!

-----------------------------------------

توصح أكثر للمشكلة :

ما أريده هو أن أجلب بيانات العملاء الذن لم يدفعوا الفاتورة أى الذين أرقام تليفوناتهم غير مسجلة فى جدول ال invoice

#4
SELECT name,clientData.tele,speed from clientData,inovice
 where clientData.tele not in (select invoice.tele from invoices)

جرب وقولي

فلسطين .. سوريا ..بورما ......وماذا بعد ؟!

سابقا

medo_programming

موقعي : www.alkhayat-it.com

مواضيع مهمه

-----------------------------------------------:

تعلم كل شىء عن الTriggers

#5
medo_Programming كتب:

SELECT name,clientData.tele,speed from clientData,inovice
 where clientData.tele not in (select invoice.tele from invoices)

جرب وقولي

تعديل خفيف:

SELECT name,clientData.tele,speed from clientData,inovice
 where clientData.tele not in (select tele from inovice)

Do as I say, not as I do

We are Anonymous. We are Legion. We don't forgive. We don't forget

#6

شكراً لتعبك

هذا ال query

SELECT name,clientData.tele,speed from clientData,inovice 
            + "where clientData.tele not in (select tele from inovice)

بيظهر كل record مرتين للعملاء الذين لم يدفعوا

و المفروض يطلع ال record مرة واحدة للعميل الذى لم يدفع

#7
SELECT name,clientData.tele,speed from clientData,inovice 
 where clientData.tele not in (select tele from inovice)

ضف مع جملة الشرط عملية تحقيق العلاقة one to many اي وضع المفتاح الحقل الرئيسي من الجدول الاول مع المفتاح الحقل الاجنبي ....او حقل جملة الاستعلام الي inner join

فلسطين .. سوريا ..بورما ......وماذا بعد ؟!

سابقا

medo_programming

موقعي : www.alkhayat-it.com

مواضيع مهمه

-----------------------------------------------:

تعلم كل شىء عن الTriggers

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