一表为类别表 class 假设有2字段,1是自增id ,2是类别名称 class_name
另一表为信息表 news 假设有3字段,1是自增id, 2是类别id 字段名fid , 3是标题 titlenews表信息id    fid       title
1    1,2,3,4   信息标题1
2    1,2       信息标题2
3    3,4       信息标题3
4    2,3       信息标题4class表信息
id  class_name
1    类别1
2    类别2
3    类别3
4    类别4
我想实现的功能是class表里的类别1在news表里出现过几次,对应news表的id 是哪些
比如类别1 出现过2次,对应news表的id为1,2 ; 类别2出现过3次,对应news表的id为1,2,4

解决方案 »

  1.   

    我做出来的思路是首先查询news表,循环,取出fid的字段,然后以 ,号分解再循环用分解的fid值查class表id是否出现过,如出现过设置一变量加1,创建一个数组,将类别名称,出现次数,对应ID分别存到数组,最后循环数组做我需要的工作,但是我觉得非常麻烦,不知道可不可以用sql语句来搞定这些,或者提供给我一个更简单的思路
      

  2.   

    关联两表,关联条件是 find_in_set(class.id, new.fid)
      

  3.   

    关联两表!
    关联条件是 find_in_set(class.id, new.fid)
      

  4.   

    加个 count () 可以么?