表 aID | USER
------------------------
1  |001,002,003,004,005
------------------------
2  |003,005,006,007表 b
ID   | NAME
------------------------
001  | 张三
------------------------
002  | 李四
------------------------
003  | 刘流
------------------------
……………………
------------------------
007  | 王五
期望的结果:
ID   | USERID   | NAME
------------------------
1    | 001      | 张三
------------------------
1    | 002      |  李四
------------------------
1    | 003      |  刘流
------------------------
1    | 004      |  ...
------------------------
1    | 005      |  ...

解决方案 »

  1.   

    用存储过程比较容易。当然你也可以用无限多个 substring_index 和 union 来实现当您的问题得到解答后请及时结贴.
    http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
      

  2.   

    可以,要用到有自增字段的临时表,不过你的表设计不符合3NF,建议修改表记录
    ID | USER
    1    001
    1    002
    ...
      

  3.   

    3NF ?
    请问可以详细解答什么是3NF嘛?
      

  4.   

    0分啊,算了,其实挺难的,表a中存储的id为何是00开头格式?
    既浪费空间又不便于查询。
      

  5.   

    3NF问搜索引擎去,可这个结构用find_in_set可以的啊
    select a.id,b.id as userid,b.name from a,b where find_in_set(b.id,a.user) order by a.id,b.id;p.s.为什么发0分贴啊?别那么小气啊还有要记得及时结贴,不然别人会鄙视的