PDA

View Full Version : مشکل با برگرداندن مقدار NULL



samprp
یک شنبه 08 اردیبهشت 1387, 15:56 عصر
سلام
من یه کوئری می خواستم که تو همین انجمن جوابمو گرفتم و دوباره یه مشکل با هاش دارم
تاپیکی که حل شد :http://barnamenevis.org/forum/showthread.php?t=103530


اینم کد کوئری :



SELECT
(
SELECT SUM(Stuff_Amount) AS Stuff_Amount
FROM Send_Get
WHERE (Stuff_Send = 0) AND (stuff_ID =@stuff_ID ) AND (stuff_Store_Store =@stuff_Store_Store )
)
-
(
SELECT SUM(Stuff_Amount) AS Stuff_Amount
FROM Send_Get
WHERE (Stuff_Send = 1) AND (stuff_ID =@stuff_ID ) AND (stuff_Store_Store =@stuff_Store_Store )
)
AS MaxAmount

در صورتی که هر یک از این دو بخش (دو SELECT ی رو می گم که قرمز شدن) چیزی برگردونن مشکلی پیش نمی یاد . ولی اگر مثلا SELECT دومی null برگردونه یعنی هیچ چی پیدا نکنه اون وقت SELECT اصلی (سبز) هیچ چی برنمی گردونه (همون NULL) اگه می شد یه جور defualt ی چیزی تعریف کنیم خوب می شد تا دیگه کلا null برنگردونه .

ممنون می شم کمکم کنید.

Amir_Safideh
یک شنبه 08 اردیبهشت 1387, 16:42 عصر
SELECT
(
SELECT ISNull(SUM(Stuff_Amount),0) AS Stuff_Amount
FROM Send_Get
WHERE (Stuff_Send = 0) AND (stuff_ID =@stuff_ID ) AND (stuff_Store_Store =@stuff_Store_Store )
)
-
(
SELECT IsNull(SUM(Stuff_Amount),0) AS Stuff_Amount
FROM Send_Get
WHERE (Stuff_Send = 1) AND (stuff_ID =@stuff_ID ) AND (stuff_Store_Store =@stuff_Store_Store )
)
AS MaxAmount
شما به جای صفر هر عددی بگذارید در صورت Null بودن اون عدد رو برمیگردونه .
--------------
موفق باشید .