#آموزش T-SQL
✍️در اسکریپت بالا دو نکته آموزشی وجود دارد که دومی مهمتره!! :
🦻نکته اول:
آشنایی با عملکرد تابع NULLIF() که اگر دو مقدار ورودی به آن، شبیه یکدیگر باشند خروجی تابع مقدار NULL و در غیر اینصورت اولین مقدار را به عنوان خروجی نمایش می دهد.
https://www.w3schools.com/sql/func_sqlserver_nullif.asp
🦻نکته دوم و مهمتر:
زمانی که دو مقدار ورودی در این تابع از یک نوع نباشند یا به عبارتی data type متفاوت داشته باشند مثلا در
SELECT NULLIF(0,'0')
و یا:
SELECT NULLIF(0,'')
در اینجا همیشه، سعی می شود نوع مقدار دوم(پارامتر ورودی دوم) به نوع پارامتر ورودی اول تبدیل شود پس:
SELECT NULLIF(0,'0')
نوع داده ای مقدار '0' باید به int (نوع داده ای عدد 0 که پارامتر اول ست) تبدیل شود. چیزی شبیه این:
SELECT CAST('0' AS int)
که خروجی بالا عدد 0 است و با توجه به عملکرد تابع که در ابتدا توضیح داده شد خروجی
SELECT NULLIF(0,0)
می شود NULL و خروجی اجرای اولین دستور Select از اسکریپت بالا هست.
❓در صورتی که توضیحات رو بخوبی متوجه شدید، خروجی
SELECT NULLIF(0,'')
را تحلیل و توضیح رو در گروه قرار بدهید.
Post #658
3.07K