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

Thay thế giá trị trong một chuỗi được phân tách bằng dấu phẩy trong MySQL?

Hmm ... có thể là cái này?

SELECT @before := CONCAT(SUBSTRING_INDEX(`columnname`,',',3),','),
       @len := LENGTH(SUBSTRING_INDEX(`columnname`,',',4)+1
FROM `tablename` WHERE ...;

SELECT CONCAT(@before,'newstring',SUBSTRING(`columnname`,@len+1)) AS `result`
FROM `tablename` WHERE ...;

Thay thế mọi thứ nếu cần, nhưng điều đó chỉ nên làm.

CHỈNH SỬA :Được hợp nhất thành một truy vấn:

SELECT
    CONCAT(
        SUBSTRING_INDEX(`columnname`,',',3),
        ',newstring,',
        SUBSTRING(`columnname`, LENGTH(SUBSTRING_INDEX(`columnname`,',',4)+1))
    ) as `result`
FROM `tablename` WHERE ...;

+1 đó có thể cần +2 , Tôi không chắc, nhưng điều đó sẽ hiệu quả.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. thay đổi bảng thêm ... trước `mã`?

  2. Có thể sử dụng Biến do người dùng xác định MySql trong .NET MySqlCommand không?

  3. Khi bạn tự động tạo các tên miền phụ khi người dùng đăng ký, nó có tạo ra một trang web mới hoặc làm xuất hiện một trang web không?

  4. Có công cụ nào để tạo cơ sở dữ liệu DDL đầy đủ cho SQL Server không? Còn Postgres và MySQL thì sao?

  5. Kích thước bộ nhớ tối đa TINYTEXT, TEXT, MEDIUMTEXT và LONGTEXT