अपनी क्वेरी को थोड़ा सा पुनर्व्यवस्थित करके आप जो चाहते हैं उसे प्राप्त कर सकते हैं। चाल यह है कि ISNULL SQL सर्वर को यह समझने से पहले बाहर होना चाहिए कि परिणामी मान कभी भी NULL नहीं हो सकता है ।
SELECT ISNULL(CAST(
CASE Status
WHEN 3 THEN 1
ELSE 0
END AS bit), 0) AS HasStatus
FROM dbo.Product
ORM का उपयोग करते समय मुझे वास्तव में यह उपयोगी लगने का एक कारण यह है और आप नहीं चाहते कि परिणामी मान को एक अशक्त प्रकार में मैप किया जाए। यह चीजों को चारों ओर आसान बना सकता है यदि आपका एप्लिकेशन मान को कभी भी शून्य के रूप में नहीं देखता है। फिर आपको अशक्त अपवादों आदि को संभालने के लिए कोड लिखने की आवश्यकता नहीं है।