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

Chỉ thay thế phiên bản thứ n của ký tự

Để thay thế phiên bản đầu tiên của một ký tự, tôi khuyên bạn nên sử dụng STUFFCHARINDEX chức năng. STUFF chèn một chuỗi vào một chuỗi khác. Nó xóa một độ dài được chỉ định của các ký tự trong chuỗi đầu tiên ở vị trí bắt đầu và sau đó chèn chuỗi thứ hai vào chuỗi đầu tiên ở vị trí bắt đầu.

DECLARE @str varchar(100) = '^1402 WSN NIAMLAB^teertS htimS 005'
SELECT STUFF(@str, CHARINDEX('^', @str), 1, '&')

Lưu ý rằng bạn cũng có thể sử dụng STUFF trong một truy vấn như sau:

SELECT STUFF(<yourcolumn>, CHARINDEX('^', <yourcolumn>), 1, '&')
FROM <yourtable>


  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:chỉ viết hoa chữ cái đầu tiên

  2. Chuẩn bị một máy ảo mới cho SQL Server 2014 CTP1

  3. Tính toán thời gian chênh lệch giữa hai hàng

  4. Cách chuyển đổi từ định dạng ngày này sang định dạng ngày khác trong SQL Server bằng CONVERT ()

  5. Tìm kiếm nhiều giá trị trong cột xml trong SQL