Logo ar.boatexistence.com

هل سيؤثر التمييز على الأداء؟

جدول المحتويات:

هل سيؤثر التمييز على الأداء؟
هل سيؤثر التمييز على الأداء؟

فيديو: هل سيؤثر التمييز على الأداء؟

فيديو: هل سيؤثر التمييز على الأداء؟
فيديو: كيف يؤثر التمييز على الإنسان في مراحل عمره المختلفة؟ 2024, يمكن
Anonim

نعم ، لأن استخدام DISTINCT (في بعض الأحيان وفقًا للتعليق) سيؤدي إلى طلب النتائجيستغرق فرز مئات السجلات وقتًا. جرب GROUP BY جميع الأعمدة الخاصة بك ، فقد يؤدي ذلك أحيانًا إلى محسن الاستعلام لاختيار خوارزمية أكثر كفاءة (على الأقل مع Oracle لاحظت مكاسب كبيرة في الأداء).

هل من السيء استخدام المميز؟

حسنًا ، لا يخفي الاستخدام غير السليم لـ "متميز" المشكلة الحقيقية فقط (الإدخالات المكررة في الجداول ، ونقص الشرط في الفقرة on) كما تمت مناقشته أعلاه ولكن أيضًا يحط من أداء الاستعلام … سيؤدي ذلك إلى ارتفاع تكلفة الإدخال / الإخراج (القراءات المنطقية) للاستعلام بشكل ملحوظ.

هل المميز يجعل الاستعلام أبطأ؟

قد يكون أداء عدد قليل جدًا من الاستعلامات أسرع في وضع SELECT DISTINCT ، و عدد قليل جدًا سيعمل بشكل أبطأ(ولكن ليس أبطأ بشكل ملحوظ) في وضع SELECT DISTINCT ولكن بالنسبة للحالة اللاحقة ، فمن المحتمل أن التطبيق قد يحتاج إلى فحص الحالات المكررة ، مما ينقل الأداء وعبء التعقيد إلى التطبيق.

هل الأفضل استخدام مميز أم تجميع حسب؟

في MySQL ، يبدو DISTINCT أسرع قليلاً من GROUP BYإذا لم يكن الحقل مفهرسًا. DISTINCT تخلص فقط من الصفوف المكررة ولكن يبدو أن GROUP BY لفرزها بالإضافة إلى ذلك.

لماذا لا نستخدم لغة مميزة في SQL؟

إذا كان هناك خيار مميز "لإصلاح" مشكلة ، فمن المحتمل أن تحصل على أداء سيئ في المقابل. يتيح لك GROUP BY استخدام وظائف مجمعة ، مثل AVG و MAX و MIN و SUM و COUNT. DISTINCT فقط يزيل التكرارات.

موصى به: