السلام عليكم ،،،
هل استطيع استخدام دالة الـ count وتحديد عدد سجلات معين مثلا آخر 10 سجلات وحساب المتوسط الحسابي لعمود معين ، بدون استخدام الشروط where .
السلام عليكم ،،،
هل استطيع استخدام دالة الـ count وتحديد عدد سجلات معين مثلا آخر 10 سجلات وحساب المتوسط الحسابي لعمود معين ، بدون استخدام الشروط where .
اولا لا داعي لcount لان الدالة avg تعيد لك المتوسط الحسابي ,فقط حدد السجلات التي تريد ادراجها في حساب المتوسط
مثلا حساب متوسط اعمار الطلبة المنحدرين من المدينة Y
Select Avg(Age) From Students Where City='Y'
شكرا جزيلا أخي مدني
اقتباساولا لا داعي لcount لان الدالة avg تعيد لك المتوسط الحسابي ,فقط حدد السجلات التي تريد ادراجها في حساب المتوسطمثلا حساب متوسط اعمار الطلبة المنحدرين من المدينة Y
هنا المشكلة ، لا يوجد لدي حقل بالقاعدة لأضع شرط تحديد عدد السجلات .
مثلا لدي رمز الشركة التاريخ سعر الاغلاق
أريد عمل استفسار يحسب المتوسط الحسابي لاخر 50 سجل مرتبة حسب التاريخ .
هنا احتاج احدد عدد السجلات 50 سجل ، ولا يوجد حقل في القاعدة لعمل الشرط عليه.
الحل الذي اتبعته هو إدراج حقل جديد بقاعدة البيانات . وعمل الاستفسار التالي بعد ذلك .
select id_comp,AVG(pr_close) from price_date where id > ( select max(id_m) from price_date_m )- 50 GROUP BY id_comp
هل يوجد دالة جاهزة تعمل ذلك بدون إدراج الحقل .
حاولت محاكاة وضعك بكتابة هذا الاستعلام الذي يحضر لنا متوسط أسعار أعلى 10 أصناف بضائع من حيث كمية المخزون منها بعد ترتيبها تنازلياً حسب كمية المخزون.
select avg(unitprice) from products where unitprice in( select top 10 unitsinstock, unitprice from products order by unitsInstock desc )
استعملنا Top لإحضار أسماء أعلى 10 أصناف من حيث معيار معين، ومن ثم الدالة avg لحساب المتوسط
آمل أن تفيدك هذه المحاولة.
بالتوفيق بإذن الله.
:)
فكر بطريقة أخرى
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…