如我商品可来有ID  商品名称   是否特价   是否折扣  是否过期   是否有效
1   0001       0          1         0          1
-----------------------------------------------------
像比如一个商品有像这样的很多状态,开始的话我的表设计是和上面一样的
但是因为后面可能还会增加状态,所以感觉这样设计不行,
那有没有更好的办法呢谢谢

解决方案 »

  1.   

    商品表ID  商品名称  状态ID状态表
    ID 状态名称
      

  2.   

    如果只有这么几个,就这样.
    ID  商品名称  是否特价  是否折扣  是否过期  是否有效 
    1  0001      0          1        0          1 如果很多很多.就竖起来.
    ID  商品名称  name    type 
    1  0001      是否特价  0
    1  0001      是否折扣  1
    1  0001      是否过期  0
    1  0001      是否有效  1
      

  3.   

    其实像楼主方法应该可以了!我们客户商品资料表就是这样弄的!查询方便
    如查询特价商品
    select * from tb where is_tj=1
      

  4.   

    一是加个状态类型表 查询的动态的匹配
    二是查询的时候用case来一个一个判断
      

  5.   

     建关系表,
    ID  商品名称  name    type
    1  0001      是否特价  0
     ........这样设计易扩充
      

  6.   

    加个状态表比较好
    另外注意状态的排他性(状态A/B/C里只能有一个状态存在)
    ,和共存性(状态A/B/C 里A/B同时满足)共存的状态就要考虑给状态分类,表中每类状态都需要一列来记录