-- 示例代码:将逗号分隔的字符串插入到 MySQL 表中
-- 假设我们有一个表 `users`,其中有一列 `user_ids` 用于存储逗号分隔的用户 ID
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
user_ids VARCHAR(255)
);
-- 插入一条包含逗号分隔的用户 ID 的记录
INSERT INTO users (user_ids) VALUES ('1,2,3,4,5');
-- 查询表中的数据
SELECT * FROM users;
-- 如果需要将逗号分隔的字符串拆分为多行,可以使用 MySQL 8.0+ 的递归公用表表达式 (CTE)
WITH RECURSIVE split_user_ids AS (
SELECT
id,
SUBSTRING_INDEX(SUBSTRING_INDEX(user_ids, ',', 1), ',', -1) AS user_id,
SUBSTRING_INDEX(user_ids, ',', 2) AS remaining_ids
FROM users
UNION ALL
SELECT
id,
SUBSTRING_INDEX(SUBSTRING_INDEX(remaining_ids, ',', 1), ',', -1),
SUBSTRING_INDEX(remaining_ids, ',', 2)
FROM split_user_ids
WHERE remaining_ids != ''
)
SELECT id, user_id FROM split_user_ids WHERE user_id != '';
-- 解释说明:
-- 1. 创建一个名为 `users` 的表,其中 `user_ids` 列用于存储逗号分隔的字符串。
-- 2. 插入一条包含逗号分隔的用户 ID 的记录。
-- 3. 使用递归公用表表达式 (CTE) 将逗号分隔的字符串拆分为多行,方便后续处理。
上一篇:mysql 查看密码
下一篇:mysql更改字段类型
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站