1
jamiesun 2013 年 8 月 15 日
那你试试用set字段呗
|
2
barbery 2013 年 8 月 15 日
楼主想表达什么? 用tag id查文章? 是的话用IN就好, tag_id IN(1,2,3)
|
4
MarsWang 2013 年 8 月 15 日
explain 下看看有没用到索引
|
5
noahzh 2013 年 8 月 15 日
你这样是sql 中的反模式,叫乱穿马路.这样根本没有意义,使用一对多的关系..就可以解决.用关系表来连接
|
7
ipconfiger 2013 年 8 月 15 日
IN 查询 不走索引的,绕道吧。
@kenneth |
8
revlis7 2013 年 8 月 15 日
我们用奇葩的二进制来做这种分类(好像set的内部实现就是这样的)
比如: "科技":0001(十进制1) "生活":0010(十进制2) "网络":0100(十进制4) 比如用户偏好是0011(十进制3),那么就代表只查看科技与生活类的信息,查询时用按位与操作进行过滤。 效率高不高不知道,这么做的好处是可以预留几位为今后扩展作考虑,否则用set做字段类型的话,扩展set字段时,需要更新表结构重建整张表。 |
9
ayang23 2013 年 8 月 15 日
这个字段只有3个取值,索引唯一性不高,mysql不会使用索引的,除非你强制索引。
|
10
msg7086 2013 年 8 月 15 日
反设计模式。
一般推荐用一个关系表来表达。people_tag_relationship表。 |