热线电话:13121318867

登录
2019-02-01 阅读量: 845
mysql如何在长型数据中实现词根检索?

问题描述:

  • 如下图所示数据结构,如何检索出同时考了“计算机”和“英语”的考生stu_id呢?


解决策略:

  • 以stu_id为查询维度,需要以stu_id字段做聚合
  • 然后利用group_concat把多个c_name合并到一起显示
  • 最后利用where...like去检索同时包含“计算机”和“英语”字符的数据
  • group_concat的结果是没有办法直接和where..like混用的,因此需要用子查询过渡
select a.* 
from (select s.* ,group_concat(c_name) find
from score s
group by stu_id) a
where find like '%计算机%'
and find like '%英语%';


  • 该表是成绩表,但是查询思路可以过渡到长型数据的查询中,从而实现词根检索
0.0000
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子