CTEs in MySQL | Advanced MySQL Series
Summary
TLDRفي هذا الدرس من سلسلة دروس MySQL المتقدمة، نتعرف على تعبيرات الجداول الشائعة (CTEs). يتيح لك CTE تعريف استعلام فرعي مؤقت يمكن استخدامه داخل الاستعلام الرئيسي، مما يسهل تنظيم الاستعلامات المعقدة وتحسين قابليتها للقراءة. يتميز CTE بالقدرة على التسمية وإعادة الاستخدام، مما يتيح للطلاب كتابة استعلامات أكثر وضوحاً وقوة. كما تمت مقارنة CTE بالاستعلامات الفرعية التقليدية، وتم التطرق إلى كيفية استخدام عدة CTEs داخل نفس الاستعلام. ستساعد هذه الدروس في تسهيل التعامل مع الاستعلامات المتقدمة في MySQL.
Takeaways
- 😀 CTE (التعبيرات الجدولية الشائعة) تسمح بتعريف استعلام فرعي يمكن الرجوع إليه داخل الاستعلام الرئيسي لتحسين التنظيم والقراءة.
- 😀 يتم تعريف CTE باستخدام الكلمة الرئيسية WITH، تليها اسم CTE واستعلام داخل قوسين.
- 😀 CTEs توفر إمكانية استخدام استعلامات فرعية يمكن إعادة استخدامها ضمن نفس الاستعلام، مما يجعل الكود أكثر وضوحًا من استخدام الاستعلامات الفرعية التقليدية.
- 😀 بعد تعريف CTE، يجب استخدامه مباشرة في الاستعلام؛ لا يمكن استخدامه لاحقًا في نفس الاستعلام.
- 😀 عند مقارنة CTE بالاستعلامات الفرعية التقليدية، نجد أن CTE أسهل في القراءة والصيانة بفضل تنظيمها الأفضل.
- 😀 يمكن تعريف عدة CTEs ضمن استعلام واحد باستخدام فاصلة بين كل CTE وآخر، مما يسمح بدمج استعلامات معقدة معًا.
- 😀 CTEs يمكن استخدامها في عمليات الانضمام بين جداول متعددة، كما هو موضح في المثال مع CTEs متعددة.
- 😀 CTEs لا تنشئ جداول دائمة أو مؤقتة، فهي عبارة عن استعلامات مؤقتة تُستخدم فقط في الاستعلام الحالي.
- 😀 يمكن استخدام CTEs لحساب المتوسط، والحد الأقصى، والحد الأدنى، وعدد العناصر داخل استعلام واحد، مما يجعل العمليات الحسابية أكثر كفاءة.
- 😀 التنسيق الجيد لاستعلامات CTE يساعد في تقليل الفوضى في الكود ويسهل فهمه عند التعامل مع استعلامات معقدة.
- 😀 CTEs توفر مرونة أكبر وتتيح تحسين الأداء عند التعامل مع استعلامات معقدة أو استخدام انضمامات متعددة.
Q & A
ما هي CTE في MySQL؟
-CTE هي اختصار لـ Common Table Expression، وهي تعبير يُستخدم لتعريف نتائج مؤقتة يمكن الاستعلام عنها داخل الاستعلام الرئيسي. تعمل CTE مثل الاستعلامات الفرعية ولكن مع مزايا أكبر في التنظيم والقراءة.
كيف يتم تعريف CTE في MySQL؟
-يتم تعريف CTE باستخدام الكلمة المفتاحية WITH، تليها اسم CTE ثم الاستعلام الذي سيتم تنفيذه داخل القوسين. على سبيل المثال: WITH CTE_name AS (SELECT * FROM table_name).
ما الفرق بين CTE والاستعلام الفرعي؟
-الاختلاف الرئيسي بين CTE والاستعلام الفرعي هو أن CTE أكثر قابلية للقراءة والتنظيم، حيث يمكن تسميتها وتنسيقها بشكل أفضل، مما يجعل الاستعلامات المعقدة أسهل في الفهم. من ناحية أخرى، يمكن أن يكون الاستعلام الفرعي أقل وضوحًا وصعبًا في بعض الأحيان.
هل يمكن استخدام CTE في أكثر من استعلام؟
-لا، CTE يمكن استخدامها فقط مباشرة بعد تعريفها في نفس الاستعلام. هي مجرد تعبير مؤقت لا يتم حفظه في قاعدة البيانات.
هل يمكن تعريف أكثر من CTE في نفس الاستعلام؟
-نعم، يمكن تعريف عدة CTEs في نفس الاستعلام باستخدام فاصلة بين كل CTE وآخر. على سبيل المثال: WITH CTE_example1 AS (query1), CTE_example2 AS (query2).
كيف يمكن تحسين تنسيق الأعمدة داخل CTE؟
-يمكن تحسين تنسيق الأعمدة داخل CTE باستخدام الأسماء المستعارة (aliases). على سبيل المثال، يمكنك تغيير اسم العمود من خلال استخدام الكلمة المفتاحية 'AS' لتحديد اسم جديد للعمود في النتيجة.
هل CTE يقوم بإنشاء جدول دائم في قاعدة البيانات؟
-لا، CTE لا ينشئ جداول دائمة أو جداول مؤقتة في قاعدة البيانات. هو مجرد تعبير مؤقت يتم استخدامه في الاستعلام فقط.
كيف يعمل CTE عندما يحتوي على أكثر من استعلام؟
-يمكن استخدام أكثر من CTE داخل نفس الاستعلام من خلال فواصل بين CTEs. يمكنك إنشاء استعلامات منفصلة داخل كل CTE ثم دمجها باستخدام عمليات الانضمام (JOIN) أو غيرها من العمليات حسب الحاجة.
هل يمكن استخدام CTE مع جمل الانضمام (JOIN)؟
-نعم، يمكن استخدام CTE مع جمل الانضمام. بعد تعريف CTE، يمكن الانضمام إليها مع جداول أخرى باستخدام جملة JOIN مثلما يتم في الاستعلامات العادية.
ما هي ميزة استخدام CTE مقارنة بالاستعلامات الفرعية في بيئات العمل المهنية؟
-CTEs توفر تنظيمًا أفضل وقراءة أسهل للاستعلامات المعقدة، وهو أمر مهم في بيئات العمل المهنية حيث يتوقع منك كتابة استعلامات واضحة وسهلة الفهم، خاصة عند العمل مع فرق مكونة من أشخاص ذوي خبرة طويلة في SQL.
Outlines
Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraMindmap
Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraKeywords
Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraHighlights
Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraTranscripts
Esta sección está disponible solo para usuarios con suscripción. Por favor, mejora tu plan para acceder a esta parte.
Mejorar ahoraVer Más Videos Relacionados
5.0 / 5 (0 votes)