Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Tách chuỗi bằng dấu phẩy trong SQL Server 2008

Sau đây sẽ hoạt động -

DECLARE @A VARCHAR (100)= '4,5,6'
DECLARE @B VARCHAR (100)= 'RXXXXXX'
DECLARE @RETURN_VALUE BIT = 1 --DEFAULT 1


SELECT items
INTO #STRINGS 
FROM dbo.split(@A,',')

IF EXISTS(SELECT 1 FROM #STRINGS S WHERE CHARINDEX(items, @B) > 0)
SET @RETURN_VALUE = 0

PRINT @RETURN_VALUE

DROP TABLE #STRINGS

Bạn cũng có thể sử dụng CONTAINS thay vì CHARINDEX -

IF EXISTS(SELECT 1 FROM #STRINGS S WHERE CONTAINS(items, @B))
SET @RETURN_VALUE = 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. Làm thế nào tôi có thể truy xuất tất cả nhân viên có tuổi sẽ là 21 trong thời gian một tháng?

  2. Chuyển một danh sách đến một Thủ tục được Lưu trữ TSQL 2008

  3. Xóa các số 0 đứng đầu khỏi một trường trong câu lệnh SQL

  4. Làm cách nào để bạn thoát khỏi dấu ngoặc kép bên trong hàm 'chứa' toàn văn bản SQL?

  5. SQL Server 2008 tách, sắp xếp và hợp nhất giá trị