اذهب إلى المحتوى

السؤال

نشر

احاول بناء استعلام في قاعة البيانات لعمل تقرير 

ولكن البيانات موجودة في جدولين مختلفين تربطهم علاقة واحد لواحد 

اريد جلب البيانات مع جمع البيانات الموجودة وتصديرها لملف اكسل

$query = Order::query();
		$query->selectRaw("DATE(orders.created_at) as order_day_date, DATE_FORMAT(orders.created_at, '%b %Y') as order_month_date")
		->with("SUM(total_order_amount) as total_order_amount_sum,
		 SUM(total_after_discount) as total_after_discount_sum, 
		 SUM(total_tax_amount) as total_tax_amount_sum, currency_code");

المشكلة اني لا اعرف كيف اقوم بدمج البيانات جميعها 

حيث انه يقوم بتنفيذ الامر الى ما قبل الدالة with() 

فكيف يمكنني كتابة الاستعلام كامل بشكل صحيح

Recommended Posts

  • 0
نشر

هل يمكنك مشاركة بنية قاعدة البيانات و الجداول لديك؟ أعتقد أنك تستخدم لارافل إليكوينت Laravel Elequent

عليك دمج الجدولين في استعلام join لجلب البيانات ..

لاحظ المثال التالي:

  • نحدد جدول الاستعلام الرئيسي (مستخدمين)
  • ندمجه من ال contacts أي جهات الاتصال حسب رقم المستخدم
  • ندمج ما سبق مع الطبيات orders حسب رقم المستخدم أيضاً
  • ثم نطبق الاستعلام select
// تضمين الصنف
use Illuminate\Support\Facades\DB;

// مثال من التوثيق
$users = DB::table('users')
            ->join('contacts', 'users.id', '=', 'contacts.user_id')
            ->join('orders', 'users.id', '=', 'orders.user_id')
            ->select('users.*', 'contacts.phone', 'orders.price')
            ->get();

 

  • 0
نشر

هذا رسم نموذج قاعدة البيانات

ارغب في جلب بعض البيانات من الجدول order

وبقية البيانات التالية من جدول invoice_order

Total_order_amount

Total_tax_amount

Total_after_discount

ومن ثم بعد ذلك جمعها بدالة sum لكتابة التقرير

digram.pdf

  • 0
نشر
بتاريخ 9 دقائق مضت قال عبدالله صالح حماده:

هذا رسم نموذج قاعدة البيانات

ارغب في جلب بعض البيانات من الجدول order

وبقية البيانات التالية من جدول invoice_order

Total_order_amount

Total_tax_amount

Total_after_discount

ومن ثم بعد ذلك جمعها بدالة sum لكتابة التقرير

digram.pdf

تمام، مفهوم join يعمل في هذع الحالة، 

يمكنك التمرن عليه من خلال موسوعة حسوب sql join

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...