我有一个表!
a
id tid
1 1,2
2 1
3 2
4 2,3
5 1,2,3tid 是数字 用逗号分开我要查询某个数字如 tid等于1
我用的是 where tid like '%1%'
发现like效率很低!怎么样提高和优化最好能用上索引之类的
a
id tid
1 1,2
2 1
3 2
4 2,3
5 1,2,3tid 是数字 用逗号分开我要查询某个数字如 tid等于1
我用的是 where tid like '%1%'
发现like效率很低!怎么样提高和优化最好能用上索引之类的
解决方案 »
- 如何复制一条记录入库?
- 用ODBC API在MySQL中存储大文件的问题
- 新手求助: 为什么我的Mysql启动时出现错误。。。
- 字段用 password()加密了,却用password() 读不出来了,是什么原因呢?
- myodbc怎么使用呀?
- 菜鸟问题:MySQL装好以后怎么初始化用户?
- 新手提问?不认包含MySQL头文件的C++程序?
- 从一个表select等好久也没有东西返回,别的表正常,这是为什么呀
- 各位大哥,我有个MySQL存储过程的疑问想请教各位
- 按月份统计每个合同累计到当月的回款数据?
- 请教高手:矢量图形如何储存到Mysql数据库中
- 为什么mysql子查询中不能用limit而临时表能呢?
2、修改表结构,不符合3NF
id tid
1 1
1 2
2 1
3 2
4 2
4 3
5 1
5 2
5 3
在TID上建立索引
全文索引有些问题!过多一样好像就不显着了
我原来想这样设置a
id tid
1 1,2
2 1
3 2
4 2,3
5 1,2,3改成
id id1 id2 id3
1 1 1
2 1
3 1
4 1 1
5 1 1 1
查询1就where id1=1 查询2就where id2=2
如果在加一个值 4
就要加一个字段!对程式控制很不方便!
所以才来提问一下有没好的解决方法一楼的还算可行!控制起来也有点麻烦!算是比较好的解决方法
我原来想这样设置a
id tid
1 1,2
2 1
3 2
4 2,3
5 1,2,3改成
id id1 id2 id3
1 1 1
2 1
3 1
4 1 1
5 1 1 1
查询1就where id1=1 查询2就where id2=1
如果在加一个值 4
就要加一个字段!对程式控制很不方便!
所以才来提问一下有没好的解决方法一楼的还算可行!控制起来也有点麻烦!算是比较好的解决方法