Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

String split T-SQL

Saya telah menggunakan SQL ini sebelumnya yang mungkin cocok untuk Anda:-

CREATE FUNCTION dbo.splitstring ( @stringToSplit VARCHAR(MAX) )
RETURNS
 @returnList TABLE ([Name] [nvarchar] (500))
AS
BEGIN

 DECLARE @name NVARCHAR(255)
 DECLARE @pos INT

 WHILE CHARINDEX(',', @stringToSplit) > 0
 BEGIN
  SELECT @pos  = CHARINDEX(',', @stringToSplit)  
  SELECT @name = SUBSTRING(@stringToSplit, 1, @pos-1)

  INSERT INTO @returnList 
  SELECT @name

  SELECT @stringToSplit = SUBSTRING(@stringToSplit, @pos+1, LEN(@stringToSplit)[email protected])
 END

 INSERT INTO @returnList
 SELECT @stringToSplit

 RETURN
END

dan untuk menggunakannya:-

SELECT * FROM dbo.splitstring('91,12,65,78,56,789')


  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 Server COALESCE () Dijelaskan

  2. Temukan hari Senin antara 2 tanggal

  3. Cara Mendefinisikan Ulang Kolom yang Dikembalikan oleh Prosedur Tersimpan di SQL Server

  4. Semua yang harus Anda ketahui tentang SQL Server BERGABUNG

  5. SQL OUTPUT Stored Procedures tidak berfungsi dengan ExecuteReader