حساب النسبة المئوية للعدد وإضافتها إلى العدد في جدول MySQL مع الاستعلام [مغلق]

dba.stackexchange https://dba.stackexchange.com/questions/103875

  •  26-09-2020
  •  | 
  •  

سؤال

أتبع استعلام MySQL الأساسي وهدفي هو تضخيم كمية طلبات اليوم بشكل مصطنع بنسبة 75%.

هل هناك طريقة أكثر فعالية للقيام بذلك دون استخدام COUNT مرتين؟

SELECT COUNT(order_id) + (COUNT(order_id) * 0.75) AS total
FROM orders
WHERE order_date BETWEEN BETWEEN CURDATE() + ' 00:00:00' AND NOW()

يحرر:لقد اكتشفت مشكلة في استعلامي (باستخدام + للتسلسل عندما كان يجب أن أستخدمه CONCAT)

هل كانت مفيدة؟

المحلول

بالنسبة للحالة العامة، استخدم استعلامك الأصلي كجدول مشتق:

SELECT cnt + (cnt * 0.75) AS total
FROM (
    SELECT COUNT(order_id) AS cnt
    FROM orders
    WHERE order_date BETWEEN CURDATE() + ' 00:00:00' AND NOW()
) AS tmp

لكن في حالتك الأمر أبسط بكثير:

SELECT (COUNT(order_id) * 1.75) AS total
FROM orders
WHERE order_date BETWEEN CURDATE() + ' 00:00:00' AND NOW()
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى dba.stackexchange
scroll top