Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 将多个值存储在单个单元格中,而不是存储在不同的行中_Mysql_Sql - Fatal编程技术网

Mysql 将多个值存储在单个单元格中,而不是存储在不同的行中

Mysql 将多个值存储在单个单元格中,而不是存储在不同的行中,mysql,sql,Mysql,Sql,是否有一种方法可以将多个值存储在一个单元格中而不是不同的行中,并搜索它们 我可以做: 而不是: 然后做: 您可以这样做,但这会使查询效率低下。您可以在字段中查找子字符串,但这意味着查询不能使用任何索引,当表中有许多行时,这是一个很大的性能问题 这是您在特殊情况下如何使用它的两个字符代码: select pId from table where find_in_set('US', available) 将值保存在单独的记录中可以使使用值的每个操作(如筛选和联接)更有效。您可以使用like运算符获

是否有一种方法可以将多个值存储在一个单元格中而不是不同的行中,并搜索它们

我可以做:

而不是:

然后做:

您可以这样做,但这会使查询效率低下。您可以在字段中查找子字符串,但这意味着查询不能使用任何索引,当表中有许多行时,这是一个很大的性能问题

这是您在特殊情况下如何使用它的两个字符代码:

select pId from table where find_in_set('US', available)

将值保存在单独的记录中可以使使用值的每个操作(如筛选和联接)更有效。

您可以使用like运算符获得结果

Select pid from table where available like '%US%'

如何确保在第一个版本中只分配一个代码?SQL标记指的是标准语言,而不是关于供应商扩展(如MySQL、MS SQL Server)的问题,因此如果您认为您的问题与特定扩展相关,请使用该扩展的标记。
select pId from table where available = 'US'
select pId from table where find_in_set('US', available)
Select pid from table where available like '%US%'