在字段中选择逗号?

时间:2017-08-14 06:25:21

标签: mysql string where comma

我想选择带有条件的mysql' comma in strings'。

我有表product,它有字段:'id, name, rack'

我想搜索特定机架上的产品,因此用户将使用逗号输入一些字符串。所以我有一个字符串变量,如下所示:

vrack='d1,a2,x3,a1'或有时vrack='a1' or vrack='b1,c3'等。

如何在mysql上选择它?

select * from product where rack=' + vrack

编辑:添加了表截图

table screenshot

因此,如果我有vrack:='P1,K2,G1',则输出应显示Ball,Pencil,Eraser

2 个答案:

答案 0 :(得分:6)

创建详细信息表格。您可以使用外键链接表 Rack Product 。不要在数据库中存储逗号分隔值。例如,PostgreSQL有这种情况的数组数据类型,但那是PostgreSQL,而不是MySQL,甚至你应该考虑是否真的需要它。

但是,如果您需要将多个位信息存储到单个字段中并且它不超过64个不同的位,您可以创建一个整数字段类型并构建一个位掩码(但这似乎不是您的情况)。

答案 1 :(得分:1)

试试这个: -

select * from product where rack in ('A1','B2');