表A
aid   name   parentid
 1    内科     0
 2    外科     0
 3    呼吸内科 1
 4    消化内科 1
...表B
 id     name     aid
  1      a       1,2
  2      b       3
  3      c       3,4,5
  4      d       9,23
....根据A表的aid来求出B表所对应的记录,例如:aid=1,求出B表中的1,2,3来?
如何实现?

解决方案 »

  1.   

    我们知道aid=1求出B表中所有与aid=1有关的信息,及id=1 id=2  id=3
      

  2.   

    不能这样存吧,这样对于读取和检索效率很低,平时都这样,有时看似麻烦的样子可以为后面省下力气:
    参考:
    表B
    id    name    aid
      1      a      1
      2      a      2
      3      b      3
      4      c      3
      5      c      4
      6      c      5
      7      d      9
      8      d      23
      

  3.   

    不能一个字段存多个信息,这样检索、修改效率相当低,也无法做到数据的完整性。
    就采用楼上的方法,然后给两张表加主外键约束,检索时采用INNER JOIN连接。
      

  4.   

    这样只能用like查询了,效率不咋地