تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
دوال التبديل في ال T-SQL
#1
وال التبديل في ال SQL Server

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

1- Case

2- Standard COALESCE and NULLIF اي انها من الدوال التي تتعامل معها كل انواع قواعد البيانات او بالاحرى اي لغة من لغات ال SQL

3- Nonstandard ISNULL, IIF, and CHOOSE اي انها الدوال المخصصة فقط في لغة ال TSQL

لنتابع الامثلة التالية

دالة ال Case

لنتخيل اننا في الجدول قمنا بخزن خاصية الجنس للموضف على اساس نوع البيانات من نوع bit اي استخدام ال TRUE وال FALSE

واردنا ان نقوم بطباعة تقرير يقوم بعرض اسم الجنس اي ذكر او انثى فنقوم باستخدام دالة ال CASE وذالك اي تقوم باختبار النتيجة القادمة من الجدول في حال كانت TRUE فأنها ذكر والعكس تماماً لنتابع المثال التالي

CREATE TABLE [dbo].[TBL_Emp](

[ID] [int] IDENTITY(1,1) NOT NULL,

[Name] [nvarchar](50) NULL,

[Gender] [bit] NULL,

CONSTRAINT [PK_TBL_Emp] PRIMARY KEY CLUSTERED

(

[ID] ASC

)

) ON [PRIMARY]

GO

insert into tbl_emp(name,gender)

values

(‘omar’,1),(‘NN’,0),(‘AA’,1)

GO

Select name,Gender,case Gender

when 1 then N’ذكر’

When 0 then N’انثى’

end AS GenderNams

from tbl_emp

GO

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

CASE ColoumTest

When الشرط then النتيجة

Else تنفيذ في حالى عدم المطابقة

END

مثال استخدام ال Coalesce وال ISNULL


في حالة استخدام ال Coalescs فانة يقوم بأختبار نتيجتين كانت الاولى NULL فأنة يجلب قيمة الثانية ويهمل الاولى وال NULLIIF نفس العمل

اما في حالة ال ISNULL فانة يقوم ايظاً بأختبار نتيجتين في كانت الاولى NULL يقوم بأرجاع النتيجة الثانية على اساس انها القيمة الاولى

اما في حال استخدمنا ال II

كما في المثال التالي

IIF(<الشرط>, <القيمة الصحيحة>, <القيمة الخائة>)



اما عن طريقة استخدام ال CHOOSE

لنتابع المثال التالي


انه هنا يقوم بأرجاع القيمة الثانية لو حاولنا تبديل الرقم ال 3 ولاحظ النتيجة يقوم باهمال القيم الباقية وجلب قيمة المتغير رقم 3
مدونتي
صفحتي على الفيسبوك

MCTS SQL Server 2008
MCSA SQL Server 2012
Microsoft Certified Trainer
SharePoint Administrator
الرد }}}
تم الشكر بواسطة: Sajad
#2
السلام عليكم ورحمة الله بركاته

جزاك الله خيرا اخي العزيز شكرا على هذه المعلومات المفيدة

تحياتي
الرد }}}
تم الشكر بواسطة: عمر المستشار


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  دوال الوقت والتاريخ الجديدة المضافة بـ sql server 2012 كلكامش الألكتروني 7 6,420 02-10-12, 05:33 PM
آخر رد: smss

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم