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

एक कॉलम को दो कॉलम में विभाजित करने के लिए Sql क्वेरी

कुछ इस तरह

declare @x nvarchar(500) = '1.1.1 chapter1'

select substring(@x,1,charindex('.',@x,1+charindex('.',@x))-1) as Major,
       substring(@x,charindex('.',@x,1+charindex('.',@x)),len(@x)-charindex('.',@x,1+charindex('.',@x))) as Minor

अपनी क्वेरी में @x को प्रतिस्थापित करें ..

और इसके लिए बेला :http://sqlfiddle.com/#!3/d41d8 /4424/0

के साथ अद्यतन किया गया। सामने और त्रुटि का सबूत

घोषित करें @x nvarchar(500) ='1.1.1 अध्याय 1’

select @x,
   case when charindex('.',@x,1+charindex('.',@x)) <> 0 then substring(@x,1,charindex('.',@x,1+charindex('.',@x))-1)
        else 'Cannot be parsed'
   end,
   case when charindex('.',@x,1+charindex('.',@x)) <> 0 then substring(@x,charindex('.',@x,1+charindex('.',@x)),len(@x)-charindex('.',@x,1+charindex('.',@x))+1)
        else 'Cannot be parsed'
   end

और बिना. सामने

घोषित करें @x nvarchar(500) ='1.1.1 अध्याय 1’

select @x,
   case when charindex('.',@x,1+charindex('.',@x)) <> 0 then substring(@x,1,charindex('.',@x,1+charindex('.',@x))-1)
        else 'Cannot be parsed'
   end,
   case when charindex('.',@x,1+charindex('.',@x)) <> 0 then substring(@x,1+charindex('.',@x,1+charindex('.',@x)),len(@x)-charindex('.',@x,1+charindex('.',@x)))
        else 'Cannot be parsed'
   end

http://sqlfiddle.com/#!3/d41d8/4430/0



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. क्वेरी जो मात्रा के आधार पर रिकॉर्ड की नकल करेगी

  2. उपयोगकर्ता 'DOMAIN\MACHINENAME$' के लिए लॉगिन विफल

  3. क्या LINQ-to-SQL डालने पर अनिर्दिष्ट कॉलम छोड़ सकता है ताकि डेटाबेस डिफ़ॉल्ट मान का उपयोग किया जा सके?

  4. SQL स्वरूपण मानक

  5. SQL सर्वर प्रबंधन स्टूडियो में तालिका में मानों को त्वरित रूप से कैसे संपादित करें?