الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ماهي تعليمة SQL المناسبه لحل هذه المشكله

مغلق
بدأه parser في 16 مارس 2007 · 3 رد · 687 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

تحيه طيبه وبعد

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

ولكم تحياتي

_______.doc

#2

أعتقد أن جواب سؤالك كما يلي

سأضع نفس المثال الموجود لدي في كتاب SQL Server 2005 ويمكنك فيما بعد استخدام نفس الطريقة لحل مشكلتك

إذا كان لدينا جدول اسمه Sales يحوي المعلومات التالية

YEAR		QUARTER AMOUNT
----------- ------- ------------------------
	   2001  Q2	  70
	   2001  Q3	  55
	   2001  Q3	  110
	   2001  Q4	  90
	   2002  Q1	  200
	   2002  Q2	  150
	   2002  Q2	  40
	   2002  Q2	  60
	   2002  Q3	  120
	   2002  Q3	  110
	   2002  Q4	  180
	   2001  Q1	  100
	   2001  Q2	  120

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

SELECT * FROM SALES
PIVOT
(SUM (AMOUNT) 
FOR [QUARTER]
IN (Q1, Q2, Q3, Q4))
AS P

فيجب أن تظهر لك النتيجة على الشكل

YEAR	  Q1	   Q2	   Q3	   Q4
----------------------------------------------------------------------------
2001	  100	  190	  165	  90
2002	  200	  250	  230	  180

ملاحظة: تعليمة select الموجودة هنا مجربة على SQL Server 2005 ولم أقم بتجربتها على النسخ السابقة من SQL Server

تم تعديل هذه المشاركة بواسطة محمد سامر أبو سلو في 19 مارس 2007 في 09:46

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#3

شكرا لك ولكن أرجو شرح الكود بالتفصيل إذا سمحت

#4

ابحث في MSDN المرفقة مع فيجول ستوديو أو Books On line الخاصة بـ SQL server عن PIVOT وستجد شرحا وافيا

على كل حال انظر الرابط Using PIVOT and UNPIVOT والرابط FROM (Transact-SQL) لعلك تجد فيهما الفائدة المرجوة كما يمكنك البحث في الموقع SQLTeam.com

وهذا شرح الكود الموجود لدي

تختار تعليمة select جميع الأسطر من جدول sales وأضيفت إليها عبارة pivot إنها تبدأ بكلمة pivot متبوعة بمحتواها محاطا بقوسين ويتضمن محتوى عبارة pivot جزأين مفصولين بكلمة for الجزء الأول يحدد نوع التجميع المراد إنجازه ويجب أن يكون الوسيط الممرر للتابع اسم عمود ولا يمكنه أن يكون تعبيرا كما هو الحال عندما يستخدم تابع التجميع خارج الأمر pivot ويحدد الجزء الثاني العمود المراد تدويره - أي العمود المراد قلبه إلى سطر - وقيم ذلك العمود ستستخدم كرؤوس للأعمدة قيمة عمود محدد ضمن سطر هي نتيجة تجميع العمود المحدد في الجزء الأول في الأسطر التي تطابق رأس العمود

اسم الكتاب SQL Server 2005 for developers

تم تعديل هذه المشاركة بواسطة محمد سامر أبو سلو في 19 مارس 2007 في 09:51

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…