求一个mysql的sql语句最优写法
我有两个表a,b
table a:
id field1
1 1,2,3,4,5
....
table b:
id field2
1 数据一
2 数据二
3 数据三
....
现在我查出table a中的记录
select field1 from table a where id=1
得到的结果是"1,2,3,4,5",可我需要得到的结果是table b中的中文“数据一,数据二,数据三....”这样的。
目前我的做法是将"1,2,3,4,5"分割,然后循环查询table b,才得到真正需要的数据。
select field2 from table b where id=array[0]
select field2 from table b where id=array[1]
............
可是这样的做法效率极低。
寻求最简单的mysql语句写法,能不能一个sql语句搞定?
我的mysql版本是4.0.20d。
谢谢回复。
问题点数:20、回复次数:3Top
1 楼pwtitle(doodoo)回复于 2004-08-03 16:56:42 得分 10
select a.field1,b.field2 from a left join b on a.id=b.idTop
2 楼141242()回复于 2004-08-03 17:31:37 得分 0
SELECT class_table.class_content
FROM xiangxi
LEFT JOIN class_table ON xiangxi.class = class_table.class_no
WHERE xiangxi.id =75
其中xiangxi中的class实际值为“1,2,3”,查询出来应该的值为“数据一,数据二,数据三”
可是实际出来的值只有“数据一”。
Top
3 楼chensiping()回复于 2004-08-04 23:01:42 得分 10
select b.f1 from b,a where a.id=1 and instr(a.f1,b.id)>0Top




