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

Chia một chuỗi thành hai phần và chọn thành hai biến

Nếu thiếu ':', @ v1 sẽ là trống

DECLARE @v1 varchar(20) 
DECLARE @v2 varchar(20)

DECLARE @s varchar(20)
SET @s = 'XYZ:[email protected]'

SELECT @v1 = stuff(b, len(b),1,''), 
       @v2 = stuff(@s, 1, len(b),'') 
FROM (SELECT left(@s, charindex(':', @s)) b) a

SELECT @v1 v1,@v2 v2

Kết quả:

v1  v2
--- ------------
XYZ [email protected]


  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 2005 Cascading Delete

  2. Truy vấn SQL Server để tìm tất cả các tên cơ sở dữ liệu hiện tại

  3. Đối với kiểu .NET DateTime, tại sao kiểu cơ sở dữ liệu suy ra là SqlDbTypes.DateTime thay vì SqlDbTypes.DateTime2?

  4. Cách tốt để sử dụng bí danh bảng trong câu lệnh Cập nhật?

  5. Sự khác biệt giữa Equi-Join và Inner-Join trong SQL