mysql 用逗号分割的字段
时间: 2023-07-12 08:37:55 浏览: 107
如果你想在 MySQL 中使用逗号分割的字段,可以使用字符串函数 `FIND_IN_SET()` 进行查询。例如,如果你有一个名为 `tags` 的字段,其中包含用逗号分隔的标签,你可以使用以下语句来查找包含特定标签的行:
```
SELECT * FROM mytable WHERE FIND_IN_SET('tag1', tags) > 0;
```
这将返回 `mytable` 表中所有包含标签 `tag1` 的行。注意,使用逗号分隔的字段通常不是最佳的数据库设计方案,因为它可能会导致查询效率低下。如果可能的话,最好将多个值拆分为单独的行或使用关系表来存储它们。
相关问题
mysql 查询不在逗号分隔字段中的内容
可以使用 `NOT IN` 关键字来查询不在逗号分隔字段中的内容。具体语法如下:
```
SELECT * FROM 表名 WHERE 字段名 NOT IN ('值1', '值2', ...);
```
举个例子,假设有一张表 `user`,其中有一个字段 `hobby` 存储了每个用户的爱好,多个爱好用逗号分隔。现在要查询所有不喜欢篮球和足球的用户,可以使用以下 SQL 语句:
```
SELECT * FROM user WHERE '篮球' NOT IN (hobby) AND '足球' NOT IN (hobby);
```
注意,在使用 `NOT IN` 关键字时,括号中的值必须用逗号分隔,并且值的类型必须与字段的类型相同。如果字段类型为字符串,则值也必须用单引号括起来。
mysql 用逗号链接字段
在 MySQL 中,可以使用 CONCAT 函数来将多个字段用逗号连接起来。 CONCAT 函数用于将字符串连接起来,并返回连接后结果。
以下是一个示例:
```
SELECT CONCAT(field1, ', ', field2, ', ', field3) AS joined_fields FROM tablename;
```
在上述示例中,field1、field2 和 field3 是要连接的字段,tablename 是表的名称。使用 CONCAT 函数将这些字段连接起来,并使用 AS 关键字给连接后的结果取别名为 joined_fields。
注意,在字段之间使用逗号进行连接时,可以在逗号前后添加额外的空格或其他分隔符,以便更好地格式化输出。
阅读全文