منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[SQL] طلب جملة SQL من فضلكم,طلب جملة SQL - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم قواعد البيانات (http://vb4arb.com/vb/forumdisplay.php?fid=40)
+--- قسم : قسم أسئلة قواعد البيانات تحت بيئة الـ.NET (http://vb4arb.com/vb/forumdisplay.php?fid=41)
+--- الموضوع : [SQL] طلب جملة SQL من فضلكم,طلب جملة SQL (/showthread.php?tid=29480)

الصفحات: 1 2


RE: طلب جملة SQL من فضلكم,طلب جملة SQL - الراس الكبيرة - 25-04-19

انت متأكد ان نوع الحقل T3 رقمي مش نص

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

طيب بجنب شني
Incorrect syntax near  عند  Dim result = Cmd2.ExecuteScalar()


RE: طلب جملة SQL من فضلكم,طلب جملة SQL - ابو ليلى - 25-04-19

السلام عليكم و رحمة الله
على ما اذكر ان جملة Group By تحتاج الى كل الحقول في جملة Select


RE: طلب جملة SQL من فضلكم,طلب جملة SQL - محمد كريّم - 25-04-19

محاولة أخرى

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

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


RE: طلب جملة SQL من فضلكم,طلب جملة SQL - الراس الكبيرة - 25-04-19

ادعوا الله لنا بالفرج اخوتكم الان بمدينة طرابلس - ليبيا - يتعرضون لقصف بمدفعية الهاوزر  نلتقي غدا ان اطال الله في اعمارنا ...السلام عليكم


RE: طلب جملة SQL من فضلكم,طلب جملة SQL - saoud2 - 25-04-19

اتضح يا عزيزي

أن SqlServer يشترط وجود T3 مع GROUP BY
وهذا التعديل
كود :
SELECT SUM(T3) FROM (SELECT T1, T3 FROM Table1 GROUP BY T1, T3)
الله يفرج كربكم ويصلح حالكم وحال الأمة الاسلامية جمعاء  Confused



RE: طلب جملة SQL من فضلكم,طلب جملة SQL - محمد كريّم - 25-04-19

(25-04-19, 03:28 AM)الراس الكبيرة كتب : ادعوا الله لنا بالفرج اخوتكم الان بمدينة طرابلس - ليبيا - يتعرضون لقصف بمدفعية الهاوزر  نلتقي غدا ان اطال الله في اعمارنا ...السلام عليكم


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


RE: طلب جملة SQL من فضلكم,طلب جملة SQL - elgokr - 25-04-19

فى البداية هنا مراجعة الصورة مجدداً

انت كاتب بالصورة مطلوب المجموع 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 طرق لما تريده واكثر

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

تحياتى لك
وتمنياتى لك التوفيق



RE: طلب جملة SQL من فضلكم,طلب جملة SQL - الراس الكبيرة - 25-04-19

شكرا جزيلا اخي elgokr وجزاك الله خيرا ورحم الله والديك

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

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


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


RE: طلب جملة SQL من فضلكم,طلب جملة SQL - elgokr - 25-04-19

الشكر لله والحمد لله
والحمد لله على كل حال

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

تحياتى لك
وتمنياتى لك التوفيق