mysql 查询 逗号相隔
时间: 2024-02-15 10:00:13 浏览: 147
在MySQL中,如果你想查询逗号相隔的字符串数据的交集,可以使用以下方法:
1. 使用`FIND_IN_SET`函数:该函数可以在逗号分隔的字符串中查找指定的值。你可以使用多个`FIND_IN_SET`函数来查找多个值,并使用`AND`运算符将它们连接起来。例如:
```sql
SELECT * FROM table_name WHERE FIND_IN_SET('value1', column_name) AND FIND_IN_SET('value2', column_name);
```
2. 使用`REGEXP`正则表达式:你可以使用正则表达式来匹配逗号分隔的字符串中的值。使用`REGEXP`运算符和正则表达式来实现。例如:
```sql
SELECT * FROM table_name WHERE column_name REGEXP 'value1|value2';
```
3. 使用`SUBSTRING_INDEX`函数:该函数可以将逗号分隔的字符串拆分为多个子字符串,并选择其中一个子字符串作为结果。你可以使用`SUBSTRING_INDEX`函数来获取逗号分隔的字符串中的第一个值或最后一个值。例如:
```sql
SELECT SUBSTRING_INDEX(column_name, ',', 1) AS first_value FROM table_name;
SELECT SUBSTRING_INDEX(column_name, ',', -1) AS last_value FROM table_name;
```
请注意,以上方法适用于逗号分隔的字符串数据的查询,但在实际使用时,你可能需要根据具体的表结构和查询需求进行适当的调整。
阅读全文