انتقل إلى محتوى الدرس

Writing Safe Raw SQL Expressions التعبيرات الخام الآمنة عبر selectRaw

ربط الجداول المترابطة عبر join و leftJoin وحساب الإحصائيات التجميعية وتجميع الصفوف بـ groupBy و having وفق أحدث معايير إطار العمل Laravel 12 مع أمثلة وتطبيقات عملية متدرجة.
1 صفوف تعليمية
إطار العمل Laravel
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

تحتاج بعض تقارير الإحصاء المتقدمة إلى كتابة تعبيرات SQL مخصصة مثل دوال العد والعمليات الحسابية داخل جملة الاستعلام. استخدم دائماً دوال selectRaw أو havingRaw مع تمرير المعاملات المتغيرة في مصفوفة الربط الثانية بدلاً من دمج المتغيرات نصياً.

  • تحديد خام آمن (selectRaw): كتابة تعبير SQL مخصص في جملة التحديد مع تمرير المتغيرات في مصفوفة ربط آمنة.
  • تصفية تجميع خام (havingRaw): فحص شروط التجميع الحسابية مع حماية المعاملات عبر علامات الاستفهام.
  • تحذير أمني صارم: لا تدمج مدخلات المستخدم نصياً داخل الدوال الخام أبداً، بل مررها دائماً في مصفوفة المعاملات الثانية.
PHP
$stats = DB::table('products')
    ->select('category_id')
    ->selectRaw('SUM(price * ?) as taxed_sum', [1.15])
    ->groupBy('category_id')
    ->havingRaw('SUM(price) > ?', [1000])
    ->get();