SQL查询的情况
我有下表格式的数据SQL查询的情况,sql,Sql,我有下表格式的数据 id brand_ids -------------- 2 77,2 3 77 6 3,77,5 8 2,45,77 -------------- (请注意,品牌标识将以逗号分隔的值存储,这对于此字段中的值是常见的) 现在我正在尝试获取一个查询,该查询只能查询出具有“77”的行 在里面 我知道我可以使用三种格式的LIKE命令如'77,%'或''%77,%'或''%77',通过或条件来实现它。但我希望这会增加sql的加载时间 有没有直接的方法来实
id brand_ids
--------------
2 77,2
3 77
6 3,77,5
8 2,45,77
--------------
(请注意,品牌标识将以逗号分隔的值存储,这对于此字段中的值是常见的)
现在我正在尝试获取一个查询,该查询只能查询出具有“77”的行
在里面
我知道我可以使用三种格式的LIKE命令如'77,%'或''%77,%'或''%77'
,通过或条件来实现它。但我希望这会增加sql的加载时间
有没有直接的方法来实现这一点?如果是,请建议
谢谢,
Balan对于您的问题,严格的回答是:不。您建议使用LIKE是使用此数据模型的最佳选择。但是,如前所述,强烈建议您使用更规范化的模型。我不知道您所在的字段中,以逗号分隔的非规范化列很常见,但这里的解决方案是将它们存储在适当的规范化表中。这只会让人头疼。你对“brand_id”栏有什么索引吗?看,昆汀的答案。@Michael:我在Magento数据库工作,在那里发生这种情况。谢谢你的链接,我对你的链接有了想法。