yokeyli 2011-11-16 15:02
浏览 201
已采纳

关于多表查询的问题

假如有5张表 tblA,tblB,tblC,tblD,tblE;现在tblA是主表,其他表都是关系它的,设想如下:
先查询出tblA的数据:select tblA.col1,null as 'tblB_col1',null as 'tblC_col1',null as 'tblD_col1',null as 'tblE_col1' from tblA

这个语句出来的结果放入map中,然后为null列补值,null列的数据来源于其余表:
select tblB.col1 from tblB where tblB.key in (tblA.id)
select tblB.col1 from tblC where tblB.key in (tblA.id)
...

不知道大家有没有好的建议?

  • 写回答

5条回答 默认 最新

  • jiangguangxian 2011-11-17 13:01
    关注

    其实我想你也可以使用试图view来做,同样如果你真要用临时表的话,请使用存储过程,在数据库中建立临时表,然后塞入数据,再查询。 不能使用这种内存临时表的方式。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥60 找人回答kibana8.14.3二次集成开发,自定义插件ui导航栏如何设置
  • ¥15 fluke高精度万用表8845A型号测交流电压一直跳动,且去掉输入后显示不归零
  • ¥15 不同模型怎么用同一个shader
  • ¥15 安卓启动没有ais proxy与v4l2的log打印
  • ¥15 go怎么读取mdb文件里面的数据
  • ¥60 Matlab联合CRUISE仿真编译dll文件报错
  • ¥15 脱敏项目合作,ner需求合作
  • ¥15 脱敏项目合作,ner需求合作
  • ¥30 Matlab打开默认名称带有/的光谱数据
  • ¥15 res.rows如何取值使用