SQL select id = 1

时间:2015-05-07 15:13:53

标签: sql categories

我的表格中id_categoria字段具有逗号分隔值,例如1,2,3,4,64,31,12,14,因为记录可以属于多个类别。如果我想选择属于类别1的记录,我必须运行以下SQL查询

SELECT * 
FROM cme_notizie 
WHERE id_categoria LIKE '1%' 
ORDER BY `id` ASC

然后从id_categoria中选择1完全id_categoria的记录集中的所有记录。我们假设值1不存在,但列值如12,15,120 ......仍然包含1。 有一种方法只需要1?不带衍生物或其他?

1 个答案:

答案 0 :(得分:1)

正如评论所说,你可能不应该这样做。相反,您应该有另一个表,每个类别有一行。但如果您决定使用这种劣质解决方案,您可以执行以下操作:

SELECT * 
FROM cme_notizie 
WHERE CONCAT(',', id_categoria, ',') LIKE '%,1,%' 
ORDER BY id ASC