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

SQL-'08:क्या एकाधिक प्रतिस्थापन कथन एक बुरा अभ्यास है/क्या इस प्रश्न को लिखने का कोई और तरीका है?

नेस्टेड प्रतिस्थापन ठीक है, लेकिन जैसे-जैसे नेस्टिंग का स्तर बढ़ता है आपके कोड की पठनीयता कम होती जाती है। अगर मेरे पास बदलने के लिए बड़ी संख्या में पात्र होते तो मैं नीचे दी गई तालिका संचालित दृष्टिकोण की तरह कुछ क्लीनर का विकल्प चुनता।

    declare @Category varchar(25)
    set @Category = 'ABC & DEF/GHI, LMN OP'
    -- nested replace
    select replace(replace(replace(replace(@Category, ' & ', '-'), '/', '-'), ', ', '-'), ' ', '-') as Department 

    -- table driven
    declare @t table (ReplaceThis varchar(10), WithThis varchar(10))
    insert into @t
        values  (' & ', '-'), 
                ('/', '-'),
                (', ', '-'),
                (' ', '-')

    select  @Category = replace(@Category, ReplaceThis, isnull(WithThis, ''))                       
    from    @t
    where   charindex(ReplaceThis, @Category) > 0;

    select @Category [Department]


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं टी-एसक्यूएल में एक स्ट्रिंग से विस्तारित ASCII वर्ण कैसे निकालूं?

  2. मैं SQL सर्वर क्वेरी में तालिका संरचना कैसे दिखा सकता हूं?

  3. मैं बिना छँटाई के किसी तालिका में अंतिम 5 पंक्तियों का चयन कैसे करूँ?

  4. डेटाबेस परिनियोजन मुद्दे

  5. एसक्यूएल सर्वर में एक पीडीएफ फाइल में एक छवि कॉलम निर्यात करना?