عندي جدولين العملاء .Cust_Def ,والاخر جدول فواتير العملاء INV_Header
اريد عمل استعلام يقوم بتجميع اسعار فواتير حسب كل عميل خلال فترة معينه حتى استطيع معرفة افضل عميل بالشركة بحيث كل صف في الاستعلام يحتوي على اسم العميل وهاتفه ومجموع فواتيرة خلال الفترة
مع العلم لا يمكنني التعديل على الجداول ولا توجد علاقات بين الجداول في قاعدة البيانات ولا مفاتيح اساسية كما ان لكل عميل عدة فواتير ... أعمل على sql 2000
استخدمت distinct لكن يقوم الاستعلام المرفق باظهار بعض العملاء بدون تجميع فواتيرهم ويتكرر العميل في الصفوف
SELECT DISTINCT
TOP 100 PERCENT dbo.Cust_Def.Cust_Phone0, SUM(dbo.INV_Header.INV_Payed_Price) AS Total, dbo.Cust_Def.Cust_No,
dbo.INV_Header.Inv_Cust_name, dbo.INV_Header.Inv_R_Date
FROM dbo.INV_Header INNER JOIN
dbo.Cust_Def ON dbo.INV_Header.Inv_Cust_no = dbo.Cust_Def.Cust_ID
WHERE (dbo.INV_Header.Inv_No_Old = '0') AND (dbo.INV_Header.Inv_R_Date BETWEEN CONVERT(DATETIME, '2014-04-01 00:00:00', 102) AND
CONVERT(DATETIME, '2014-04-30 00:00:00', 102))
GROUP BY dbo.Cust_Def.Cust_Phone0, dbo.Cust_Def.Cust_No, dbo.INV_Header.Inv_Cust_name, dbo.INV_Header.Inv_R_Date
ORDER BY SUM(dbo.INV_Header.INV_Payed_Price) DESCinv_r_date هو حقل تاريخ الفاتوره في الجدول
INV_Payed_Price حقل اجمالي سعر الفاتورة
Cust_No هو حقل رقم العميل