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

شرط في استعلام

بدأه djamel2020 في 21 مايو 2017 · 1 رد · 769 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله تعالى وبركاته
الأساتذة الكرام رجاءا ممكن شرح لهذا الإستعلام لأني أريد إضافة شروط أخرى فيه
 SELECT dbo.Facture_L.Num_Vent, dbo.Facture_L.Num_Fact_Vent, dbo.Facture_L.ID_Prod, dbo.Facture_L.UM, dbo.UM.Nom_UM, CAST(CASE WHEN (Facture_L.UM = 4) THEN (Facture_L.Qte_V * 0.02) 
ELSE (Facture_L.Qte_V) END AS FLOAT) AS Qte, dbo.Facture_L.Prix_V
FROM dbo.Facture_L INNER JOIN
dbo.UM ON dbo.Facture_L.UM = dbo.UM.ID_UM

فمثلا في هذا الإستعلام لو تغيرت قيمة Facture_L.UM إلى 3 النتيجة Facture_L.Qte_V * 0.1وهكذا إلى خمسة شروط

ألف شكر لكم مسبقا

#2

البسلام عليكم ورحمة الله وبركاته

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

بالتوفيق

SELECT 
		dbo.Facture_L.Num_Vent, 
		dbo.Facture_L.Num_Fact_Vent, 
		dbo.Facture_L.ID_Prod, 
		dbo.Facture_L.UM, 
		dbo.UM.Nom_UM, 
		CAST(CASE 	
					WHEN (Facture_L.UM = 4) THEN (Facture_L.Qte_V * 0.02) 
					WHEN (Facture_L.UM = 3) THEN (Facture_L.Qte_V * 0.3) 
					WHEN (Facture_L.UM = 2) THEN (Facture_L.Qte_V * 0.34)
					ELSE (Facture_L.Qte_V) END AS FLOAT) AS Qte, dbo.Facture_L.Prix_V
FROM 
		dbo.Facture_L 
	INNER JOIN
		dbo.UM 
	ON 
		dbo.Facture_L.UM = dbo.UM.ID_UM

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