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

SQL सर्वर 2005 में अल्पविराम से अलग किए गए NVARCHAR को तालिका रिकॉर्ड में कैसे परिवर्तित करें?

का संभावित डुप्लिकेट अल्पविराम से अलग किए गए मानों को अलग करें और sql सर्वर में तालिका में संग्रहीत करें .

कृपया Comma-Delimited Value से एक सटीक प्रयास करें। टेबल :

CREATE FUNCTION [dbo].[ufn_CSVToTable] ( @StringInput VARCHAR(8000), @Delimiter nvarchar(1))
RETURNS @OutputTable TABLE ( [String] VARCHAR(10) )
AS
BEGIN

    DECLARE @String    VARCHAR(10)

    WHILE LEN(@StringInput) > 0
    BEGIN
        SET @String      = LEFT(@StringInput, 
                                ISNULL(NULLIF(CHARINDEX(@Delimiter, @StringInput) - 1, -1),
                                LEN(@StringInput)))
        SET @StringInput = SUBSTRING(@StringInput,
                                     ISNULL(NULLIF(CHARINDEX(@Delimiter, @StringInput), 0),
                                     LEN(@StringInput)) + 1, LEN(@StringInput))

        INSERT INTO @OutputTable ( [String] )
        VALUES ( @String )
    END

    RETURN
END
GO

XML का उपयोग करके अन्य तरीकों से आवश्यकता की जाँच करें:

DECLARE @param NVARCHAR(MAX)
SET @param = '1:0,2:1,3:1,4:0'

SELECT 
     Split.a.value('.', 'VARCHAR(100)') AS CVS  
FROM  
(
    SELECT CAST ('<M>' + REPLACE(@param, ',', '</M><M>') + '</M>' AS XML) AS CVS 
) AS A CROSS APPLY CVS.nodes ('/M') AS Split(a)


  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 सर्वर में SYSNAME डेटा प्रकार क्या है?

  2. SSIS पैकेज विफल होने के साथ कनेक्शन त्रुटि प्राप्त करने में विफल

  3. SQL सर्वर में डेटा संपीड़न बचत का अनुमान लगाएं

  4. सक्रिय परिणाम में MS SQL के साथ PDO का उपयोग करने वाली कोई फ़ील्ड नहीं है

  5. एक सूची से SqlBulkCopy<>