-- 示例代码:使用 REGEXP_REPLACE 函数替换字符串中的匹配项
-- 假设我们有一个表 `employees`,其中有一列 `email` 存储员工的电子邮件地址。
-- 我们想将所有以 "old-domain.com" 结尾的电子邮件地址替换为 "new-domain.com"。
-- 创建示例表并插入数据
CREATE TABLE employees (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100)
);
INSERT INTO employees (name, email) VALUES
('Alice', 'alice@old-domain.com'),
('Bob', 'bob@old-domain.com'),
('Charlie', 'charlie@other-domain.com');
-- 使用 REGEXP_REPLACE 函数进行替换
UPDATE employees
SET email = REGEXP_REPLACE(email, '@old-domain\\.com$', '@new-domain.com')
WHERE email REGEXP '@old-domain\\.com$';
-- 查询结果以验证更新是否成功
SELECT * FROM employees;
REGEXP_REPLACE 是 MySQL 8.0 及以上版本中引入的一个正则表达式函数,用于根据正则表达式模式替换字符串中的匹配部分。@old-domain.com 结尾的电子邮件地址替换为 @new-domain.com。@old-domain\\.com$ 表示以 @old-domain.com 结尾的字符串(\\. 用于转义点字符,$ 表示字符串的结尾)。WHERE 子句确保只更新那些电子邮件地址符合指定模式的记录。上一篇:mysql刷新权限
下一篇:mysql自增主键
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站