آموزش توابع خالی درSQL به همراه راه حل ها- SQL NULL Functions

بازدید: 290 بازدید
توابع حالی
[cdb_box_content]

با سلام خدمت همراهان همیشگی وب سایت پرنیان طرح

با یکی دیگر از مقالات آموزش SQL در خدمت شما عزیزان هستیم.

می توانید برای مطالعه بیشتر در مورد SQL  به این لینک در وب سایت پرنیان طرح مراجعه کنید.

در آموزش امروز قصد داریم در مورد توابع خالی SQL NULL Functions ،در زبان برنامه نویسی SQL صحبت کنیم.

همچنین نحوه استفاده کردن از این توابع در این زبان را نیز مرور و با هم تمرین خواهیم کرد.

در ادامه آموزش همراه ما باشید.

[/cdb_box_content]
[cdb_box_content]

مقدمه


به جدول زیر توجه کنید.

تابع خالی NULL FUNCTION
توابع خالی NULL FUNCTION

 

فرض کنید ستون “UnitsOnOrder” اختیاری است و ممکن است دارای مقادیر NULL باشد.

حالا به عبارت SELECT زیر نگاه کنید:

SELECT ProductName, UnitPrice * (UnitsInStock + UnitsOnOrder)
FROM Products;

 

در مثال بالا ، اگر هر یک از مقادیر “UnitsOnOrder” دارای مقدار “NULL”باشد ، نتیجه نهایی ، NULL خواهد بود.

[/cdb_box_content]
[cdb_box_content]

راه حل ها

راه حل در زبان برنامه نویسی MySQL

تابع ()MySQL IFNULL به شما این امکان را می دهد که اگر مقدار خروجی NULL بود، آن را با یک مقدار دیگر جایگزین کنید.

SELECT ProductName, UnitPrice * (UnitsInStock + IFNULL(UnitsOnOrder, 0))
FROM Products;

و یا  می توانیم از تابع ()COALESCE  استفاده کنیم .

به مثال زیر توجه کنید:

SELECT ProductName, UnitPrice * (UnitsInStock + COALESCE(UnitsOnOrder, 0))
FROM Products;

 

 

راه حل در زبان برنامه نویسی SQL Server

تابع ()SQL Server ISNULL به شما این امکان را می دهد که اگر مقدار خروجی NULL بود، آن را با یک مقدار دیگر جایگزین کنید.

SELECT ProductName, UnitPrice * (UnitsInStock + ISNULL(UnitsOnOrder, 0))
FROM Products;

 

 

راه حل در زبان برنامه نویسی MS Access

تابع  ()MS Access IsNull ، در صورتی که نتیجه یک اعلان برابر باNULLباشد، مقدار  TRUE یا (1-) را بر می گرداند.

در غیر اینصورت مقدار FALSE یا (0) را بر خواهد گرداند.

SELECT ProductName, UnitPrice * (UnitsInStock + IIF(IsNull(UnitsOnOrder), 0, UnitsOnOrder))
FROM Products;

 

راه حل در زبان برنامه نویسی Oracle

تابع ()NVL در زبان برنامه نویسی اوراکل نیز به همان نتیجه خواهد رسید.

SELECT ProductName, UnitPrice * (UnitsInStock + NVL(UnitsOnOrder, 0))
FROM Products;

[/cdb_box_content]
[cdb_box_content]

اگر این مطلب برای شما مفید بود، ما را در گوگل ستاره باران کنید.

ترجمه و ارائه : رویا نجفی

منبع : وب سایت w3schools

[/cdb_box_content]
دسته بندی آموزش MY SQL
اشتراک گذاری
مقالات مرتبط

دیدگاهتان را بنویسید

سبد خرید

هیچ محصولی در سبد خرید نیست.