但是我的keyword_ids是存在空格或者为空的情况的 请帮我过滤
时间: 2024-04-12 11:27:49 浏览: 109
如果您的 `keyword_ids` 字段可能包含空格或为空值,可以使用 `REGEXP_REPLACE` 函数来过滤这些情况。以下是一个更新后的示例查询:
```sql
INSERT INTO sa_ccms_tags_mapping (tag_id, a_id)
SELECT DISTINCT keyword_id, id
FROM sa_cms_article
CROSS JOIN JSON_TABLE(CONCAT('[', REGEXP_REPLACE(keyword_ids, '[ ,]+', ','), ']'), '$[*]' COLUMNS (keyword_id INT PATH '$')) AS jt;
```
在这个查询中,使用 `REGEXP_REPLACE` 函数将空格或连续的逗号替换为单个逗号。这样可以确保生成的数组中不会包含空元素。
请注意,这里假设您的MySQL版本支持 JSON 函数和 JSON_TABLE 函数。如果不支持,请告诉我您的MySQL版本,我可以提供适用于该版本的替代方案。
阅读全文
相关推荐















