mysql 怎么 查询 包含字段

daodaoyu222 2018-01-14 06:44:00
维护一个表,就两个字段


uid: 用户id, 主键。
datas: 推荐关系。数据格式如 ,0,1,2,3,4,5,6,------n,每个数字代表一个用户的id。






上图,就是两个字段 第一个逗号 分开,

比如,我想查询 字段2 datas 包含 2366 的 数据。

有很多种方法,比如 like left substring 等,我想请教,还 有不有哪种最 快的方法,或者说能 使用 到索引。。





...全文
1938 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChinaITOldMan 2018-01-22
  • 打赏
  • 举报
回复
用full index试一试
传说之心 2018-01-20
  • 打赏
  • 举报
回复
建立全文索引
a87977825 2018-01-19
  • 打赏
  • 举报
回复
如果你想提高查询速度的话,目前你的表设计是不合理的,应该做一个用户和用户多对多的一个关系表,一个属性只存一个用户ID,这样就可以用索引查询,效率自然就有飞速的提升;
kampoo 2018-01-15
  • 打赏
  • 举报
回复
对于关系型数据库,范式1要求每个信息项不可再分,所以尽管可以利用 LIKE %XXXX% 来查询符合条件的字段,但由于你的设计违反了F1所以查询效率不会太高。如果确实只能这么设计你的表及字段,建议使用MySQL的 FULLTEXT 创建全文索引。
rucypli 2018-01-15
  • 打赏
  • 举报
回复
可以尝试建立全文索引
zjcxc 2018-01-15
  • 打赏
  • 举报
回复
索引查找是用不到的,无法根据你的值做范围定位,需要扫描所有的数据,所以索引扫描是可以用到的,但你只有两个字段,索引扫描和表扫描没什么区别,所以也就这样了 如果发效率,第2个字段应该是分拆后存储的,每个值一条记录,这样才能真正的使用索引

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧