我的表中有一个字段COLORS (varchar(50)),SHIRTS其中包含逗号分隔的字符串,例如1,2,5,12,15,.每个数字代表可用的颜色.
当运行查询select * from shirts where colors like '%1%'以获得所有红色衬衫(颜色= 1)时,我还得到颜色为灰色(= 12)和橙色(= 15)的衬衫.
我应该如何重写查询,以便仅选择颜色1而不是所有包含数字1的颜色?
我有两张桌子,categories和movies.
在movies表格中我有一个专栏categories.该列包含电影适合的类别.类别是以逗号分隔的ID.
这是一个例子:
Table categories {
-id- -name-
1 Action
2 Comedy
4 Drama
5 Dance
}
Table movies {
-id- -categories- (and some more columns ofc)
1 2,4
2 1,4
4 3,5
}
Run Code Online (Sandbox Code Playgroud)
现在回答实际问题:是否可以执行从电影表中排除类别列的查询,而是从类别表中选择匹配的类别并将它们返回到数组中?就像一个连接,但问题是有多个用逗号分隔的类别,是否有可能做某种正则表达式?