数据库查询问题,请高手赐教
例如:ORACLE中已知表A和表B.要求得到如下结果(不想去from三次表B,请问有其他办法不?)表AID姓名籍贯现居地1张一广东深圳福建厦门2张二广东广州安徽六安3张三湖北武汉四川成都4………表BID籍贯邮编1广东深圳 广东广州 湖北武汉 福建厦门 安徽六安 四川成都 ……结果:姓名籍贯籍贯邮编现居地现居地邮编张一广东深圳518000福建厦门200000张二广东广州519000安徽六安410000张三湖北武汉430000四川成都210000
你所说的问题我大致这样写了一下:select a.姓名,a.籍贯,b.邮编,a.现居地 from 表A a,表B b where = 希望对你能有所启发……
很简单的表连接查询嘛join on
select 姓名,A.籍贯,B.邮编 as 籍贯邮编,现居地,C.邮编 as 现居地邮编 from A,B,B C where A.籍贯=B.籍贯 and A.现居地=C.籍贯
select name 姓名, bp 籍贯, pc 籍贯邮编, pa 现居地, b.postcode 现居地邮编 from b join ( select name, rthplace bp, b.postcode pc, e_addr pa from a join b on ( rthplace = rthplace) ) t on ( = rthplace)
看不清楚,能不能有个表格什么更加清晰一些
SELECT A.姓名, A.籍贯, B.邮编 AS 籍贯邮编, A.现居地, C.邮编 AS 现居地邮编 FROM A, B, B C WHERE A.籍贯=B.籍贯 AND A.现居地=C.籍贯; 表B的籍贯若称为“城市”会更清楚些。
1、不知“不想去from 三次表B”是何意,故,揣测题意回答如下: 2、将表A原表(黄色区域)插入“籍贯邮编”和“居住地邮编”两列。 3、在D3输入公式“=VLOOKUP(A3,$A$8:$C$14,3,)”,并向下复制到D5,即可得到籍贯邮编如绿色区域。 ★结果表,不得省略ID列,否则失去查找籍贯邮编的依据;居住地邮编无信息来源,无从查找。 供参考。