Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

यदि टी-एसक्यूएल में रिकॉर्ड न्यूल है तो स्ट्रिंग को कैसे बदलें?

आप COALESCE का उपयोग कर सकते हैं या ISNULL . पहला मानक है और पहला देता है NOT NULL तर्क (या NULL यदि सभी तर्क NULL हैं )

SELECT COALESCE(micv.value,'Pending') as value

ISNULL केवल 2 तर्कों तक ही सीमित है लेकिन SQL सर्वर में अधिक कुशल है यदि परीक्षण किया जाने वाला पहला मान मूल्यांकन करने के लिए महंगा है (उदाहरण के लिए एक सबक्वायरी)।

ISNULL . के साथ एक संभावित "गोचा" इसके बारे में पता होना चाहिए कि यह पहले पैरामीटर का डेटाटाइप देता है, इसलिए यदि प्रतिस्थापित किया जाने वाला स्ट्रिंग कॉलम डेटाटाइप से अधिक लंबा है तो आपको एक कास्ट की आवश्यकता होगी।

उदा.

CREATE TABLE T(C VARCHAR(3) NULL);

INSERT T VALUES (NULL);

SELECT ISNULL(C,'Unknown')
FROM T

वापस आ जाएगा Unk

लेकिन ISNULL(CAST(C as VARCHAR(7)),'Unknown') या COALESCE दोनों इच्छानुसार काम करेंगे।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sql सर्वर नियतात्मक उपयोगकर्ता-परिभाषित फ़ंक्शन

  2. मैक पर SQL सर्वर कैसे स्थापित करें

  3. क्या एक अद्यतन SQL कथन के साथ एकाधिक अद्यतन करना संभव है?

  4. अल्पविराम से अलग किए गए मानों वाला स्तंभ खोजना

  5. SQL सर्वर तालिका निर्माण दिनांक क्वेरी