我有一个选择多个列表html控件,它允许最终用户选择多个项目。目前,我将用户选择的值存储为“卡车,重卡,其他”到mysql varchar字段中。但如果用户选择卡车选择多个控制,则搜索卡车和重型卡车。此查询的SQL语句类似于“从表中选择truckType,其中trackType类似'%truck%'”。
似乎解决方案的唯一方法是将选定的值放入另一个表中。
还有其他方法可以在一个表中处理此问题吗?
答案 0 :(得分:0)
将,
添加到最后并开始
因此值变为, truck, heavy truck, others,
使用此查询
select truckType from table where trackType like '%, truck,%
注意:,
like '%, truck,%'
答案 1 :(得分:0)
你应该单独制作一个表格:
------------------
typeId | type |
-----------------
1 | truck |
2 | heavy truck |
....
也是实体表:
------------------
entityid | |
-----------------
1 | entity1 |
2 | entity2 |
和其他表将与此表具有多对一关系:
-------------------------------
id | typeId | entityId |
-------------------------------
1 | 1 | 2 |
2 | 2 | 2 |
2 | 2 | 1 |
你的选择将是这两个表的连接。