首先我要说你的b表表结构不合理,应该是
b(地区编码,地区名称,父编码)
这样多好
不过你要的sql可以为
select a.zcxzqh,c.name
from a,
(select distinct 省编码 as code,省名 as name from b
union all
select distinct 市编码 as code,市名 as name from b
union all
select distinct 县编码 as code,县名 as name from b
)as c
where a.zcxzqh = c.code
select a.zcxzqh,地区名称 from a ,(select distinct 地区编码,地区名称 from b) as c where a.zcxzqh=b.地区编码
看了半天也没看明白,是不是原来a表是叫jbqk,而b表叫xzqh?(根据你的SQL语句看出来的)
我理解不对的地方麻烦说明下。