SQL表有一个名称为
的字段 image_colors
此字段的值可以是一行不同的颜色 - 例如:
green red blue white
当我搜索特定颜色时,我使用:
SELECT *
FROM `gallery_images`
WHERE `image_colors` LIKE '%green%'
在这种情况下,值:
green red blue white
包含绿色并将被选中。
问题:
SQL是否可以仅查找只有1个Word的值:
green
答案 0 :(得分:1)
是,使用简单的相等比较仅选择与ptl_postingtypename
匹配的值:
green
注意:
select *
from gallery_images
where image_colors = 'green'
字典表和colors
与gallery_images
之间的联结表来更改多对多数据模型,以规范化您的数据并加快查找速度答案 1 :(得分:0)
尝试使用
touchend
答案 2 :(得分:0)
您现有的查询也适用于单个字。无需对搜索字段中的单个字值进行任何更改。
但是这个查询当然会降低应用程序的性能。
最好不要在单列中存储多个值,而是最好创建另一个表,以Integer值的形式将颜色存储为多行。
答案 3 :(得分:0)
如果您想要只有“绿色”颜色的记录,请不要使用Like运算符。
select *
from gallery_images
where image_colors = 'green'