我有一个名为“product”的表,其中有一列名为“id_subcategory”。 此列包含以逗号分隔的数字列表。
问题是此查询仅在列表中第一个时才找到 91 号码。否则返回 0。这不正常。
SELECT COUNT(*) FROM product WHERE 91 IN (id_subcategory);
我该怎么办?
最佳答案
您可能需要 WHERE ',' || id_子类别 || ',' LIKE '%,91,%'
这不会使用索引,因为前导 %
,所以如果您需要经常查询子类别,您应该考虑不存储逗号分隔的列表。
关于mysql - SQL in 子句,on column,不能正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49696778/