تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[SQL] طلب جملة SQL من فضلكم,طلب جملة SQL
#11
انت متأكد ان نوع الحقل T3 رقمي مش نص

نعم الحقل رقمي اخي  

طيب بجنب شني
Incorrect syntax near  عند  Dim result = Cmd2.ExecuteScalar()
الرد }}}
تم الشكر بواسطة: elgokr
#12
السلام عليكم و رحمة الله
على ما اذكر ان جملة Group By تحتاج الى كل الحقول في جملة Select
اللهم لك الحمد كما ينبغي لجلال وجهك و عظيم سلطانك
في حل و ترحال
الرد }}}
تم الشكر بواسطة: elgokr
#13
محاولة أخرى

PHP كود :
SELECT T1SUM (T3FROM Table1 GROUP BY T1

وحبذا لو تنفذ هذا الاستعلام في sql server management studio
أولا للتأكد من أنه صالح

الرد }}}
تم الشكر بواسطة: elgokr , الراس الكبيرة
#14
ادعوا الله لنا بالفرج اخوتكم الان بمدينة طرابلس - ليبيا - يتعرضون لقصف بمدفعية الهاوزر  نلتقي غدا ان اطال الله في اعمارنا ...السلام عليكم
الرد }}}
تم الشكر بواسطة: elgokr , عبد العزيز البسكري
#15
اتضح يا عزيزي

أن SqlServer يشترط وجود T3 مع GROUP BY
وهذا التعديل
كود :
SELECT SUM(T3) FROM (SELECT T1, T3 FROM Table1 GROUP BY T1, T3)
الله يفرج كربكم ويصلح حالكم وحال الأمة الاسلامية جمعاء  Confused
الرد }}}
تم الشكر بواسطة: elgokr , الراس الكبيرة
#16
(25-04-19, 03:28 AM)الراس الكبيرة كتب : ادعوا الله لنا بالفرج اخوتكم الان بمدينة طرابلس - ليبيا - يتعرضون لقصف بمدفعية الهاوزر  نلتقي غدا ان اطال الله في اعمارنا ...السلام عليكم


الله المستعان
حفظكم الله وحفظ طرابلس

الرد }}}
تم الشكر بواسطة: elgokr
#17
فى البداية هنا مراجعة الصورة مجدداً

انت كاتب بالصورة مطلوب المجموع 34 بناءاً على رقم الفاتورة
حيث ان رقم الفاتورة لكل ما هو مذكور 100 و 101 و 102 وليس لـ 100 فقط

تابع حتى النهاية لتصل للامر

ان صح المقصود فيجب ان يكون 
الجمع لكل من (12+12+12) للفاتورة رقم 100 ليكون المجموع 36
والجمع لكل من (10+10) للفاتورة رقم 101 ليكون المجموع 20
والجمع لكل من (12+12) للفاتورة رقم 102 ليكون المجموع 24
وليعطى الاجمالى النهائي لمجموع الخصم هو (36 + 20 + 24) = 80

واذا كان هذا هو المطلوب صحيحاً فاليك الكود بهذا الشكل
كود :
SELECT Sum(TSum) AS SumTotal FROM (SELECT T1, Sum(T3) As TSum FROM Table1 GROUP BY T1) AS FormSum

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

 ليصبح 101 = 36
وليصبح 102 = 20
وليصبح 103 = 24

فكل ما عليك استخدام الاستعلام بهذا الشكل
كود :
SELECT T1, Sum(T3) As TSum FROM Table1 GROUP BY T1

طيب والنقطة الاخيرة وهى ماذا لو كنت اريد عمل جمع
جمع الواتير مثل كود الاول لاجمالى 80 ولكن باخذ قيمة واحدة فقط من كل فاتورة
ليكون كما هو مشير اليه بالصورة 12+10+12 = 34

لاتمام ذلك كل ما عليك استخدام الاستعلام بهذا الشكل
كود :
SELECT Sum(TSum) AS SumTotal FROM (SELECT T1, MIN(T3) As TSum FROM Table1 GROUP BY T1 ORDER BY T1 ASC) AS FormSu

وحتى يعمل الكود الاخير انصحك ان تضع عمود ID
يكون من نوع ترقيم تلقائي وله مفتاح

وتعديل الكود ليكون بهذا الشكل
كود :
SELECT Sum(TSum) AS SumTotal FROM (SELECT T1, MIN(ID) As TSum FROM Table1 GROUP BY T1 ORDER BY ID ASC) AS FormSu

والسبب حتى يقوم باخذ اول قيمة من الفاتورة وليس اصغر مبلغ خصم
الان بات لديك الـ 3 طرق لما تريده واكثر

بات الامر معك فى طريقة استخدامك للاستعلام

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

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


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
#18
شكرا جزيلا اخي elgokr وجزاك الله خيرا ورحم الله والديك

نعم هذا هوا الكود المطلوب ويعمل بشكل ممتاز

كود :
SELECT Sum(TSum) AS SumTotal FROM (SELECT T1, MIN(T3) As TSum FROM Table1 GROUP BY T1 ORDER BY T1 ASC) AS FormSu


ثم الشكر موصول  لكل من ساعدني ولو بملاحظة كما اشكر كل من دعى الله لبلادي ومدينتي الحبيبة طرابلس .... لاتنسونا من صالح دعائكم
الرد }}}
تم الشكر بواسطة: elgokr , elgokr
#19
الشكر لله والحمد لله
والحمد لله على كل حال

واعانكم الله لما انتم به
وحماكم الله جميعاً من كل شر

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

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


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



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


يقوم بقرائة الموضوع: