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

كيف أضيف أو أعدل بيانات لجدول ناتج عن استعلام فرعي SQL SubQuery

سعيد يوسف

السؤال

Recommended Posts

  • 1

لإضافة بيانات لجدول ما، يمكن استخدام عبارة INSERT INTO ونمرر لها القيم VALUES على شكل استعلام SELECT:

INSERT INTO TopStudents

SELECT * 
FROM Students 

WHERE marks > 90;

مثلا لدينا جدول TopStudents يحوي الطلاب المتفوقين في مادة ما، نريد ملأه بقيم الطلاب الذين حصلو على علامة أكبر من 90.

عبارة SELECT سوف تعيد حميع القيم الموافقة للشرط (بيانات الطلاب) وتمررهم لعبارة INSERT ليتم إضافتهم.

والشكل العام للعبارة:

INSERT INTO tableB

SELECT * 

FROM tableA

WHERE condition;

يمكن أن يكون الاستعلام SELECT معقداً أكثر ولكن انتبه لتوافق الحقول بين ناتج الاستعلام و بنية الجدول

لتحديد الحقول التي تريد إضافتها مرر أسماء الأعمدة:

INSERT INTO tableB (col1, col2, col3, ...)

SELECT col1, col2, col3, ...

FROM tableA

WHERE condition;

والتعديل من SubQuery:

نستخدم الكلمة المفتاحية UPDATE SET ..هنا استخدمنا شرط لمعالجة ناتج الاستعلام

UPDATE customers 
SET vip = 
	IF  
  (SELECT sum(Amount)
   FROM payment
   WHERE customers.CustomerID = payment.CustomerID) > 5000 THEN True ELSE False;

لاحظ أن الحقل VIP سيتم تحديد قيمته إن كان مجموع مشتريات الزبون أكبر من 5000 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...