已知a,b两个表。
表a的字段分别是xm,xb,nl,rk,bm  (分别对应姓名、性别、年龄、人口、编码)
表b的字段是xh,xm,rk,bh,xb,nl,bz   (分别对应序号、姓名、人口、编号、性别、年龄、备注)表b的结构如下:(序号可为空,这个表是家庭登记表,带序号的是户主,编号相同的是同一个家庭成员)部分字段如下:
序号 姓名  人口       编号
1   刘佩彬  4       1001
    李秋梅           1001
    刘敏             1001
    刘佳             1001
2   黄诗锋  3       1002
    李艳云           1002
    黄书芳           1002
3   陈巧莲  4       1003
    黄香州           1003
    黄景景           1003
    黄灿             1003
4   胡新桥  1       1004
5   成国善  4       1005
    胡桂珍           1005
    成锦             1005
    成秀             1005
1   范德萨  1       1006
2   杨志    3       1007
    小兰             1007
    发财             1007
3   刘欢    1       1008
表a全为户主的记录,表b是包括户主在内的所有家庭成员,表a、b互有对方没有的户主(即家庭)。
为了得到表a、b中户主相同的家庭成员资料,我的语句是select * from b where bh in (select b.bh from a,b where a.xm=b.xm and a.xb=b.xb a.nl=b.nl and b.xh is not null);
但表b中的户主的相关信息不是很准,比如字段“人口”要以表a的人口为准。想把最后的查询结果中的rk换成表a中的rk,请问怎么替换?