一条记录有多种状态,并且可以同时处于多个状态,我想用整数(质数)来分别表示各个状态,如果同时处于多个状态,就用状态的公倍数来表示,然后查询的时候通过取余=0的条件就知道是不是处于某一个状态了。请问这样做好不好,select的时候取余作为条件对性能影响大不大?有没有其他比较好的方法。谢谢

解决方案 »

  1.   

    个人认为想法很好,以前咋没想到?
    看你 以后的需求  需要把一条记录的所有状态都找出来吗?通常的做法:
    1。如果只查询某种状态下的记录,不需要把这条记录的所有状态列出来。可以存储   状态1,状态2...
    2.如果需要查询记录的所有状态。还是按照范式的做法。
    再来张表存储,你的表一条记录对应新表的多条记录
    id  status
      

  2.   

    也不好取,麻烦。
    昨天的帖子有解答 #  DragonBill 4楼
    http://topic.csdn.net/u/20080317/11/9b13065e-7b6a-4827-adfe-a8ab0ee9943e.html查询某一状态的所有记录   避免麻烦的话就用方法2