iteye_8144 2012-06-25 12:27
浏览 269
已采纳

一对多的关联关系怎么弄呢

[color=blue]现在有个公司表A

有公司的其他相关信息表:公司工商管理表B,公司违法信息表C,公司税务信息表D,公司工商管理表E。。。。。。,每条信息都有录入时间,每个表都通过外键companyid关键公司表A表的Id,表示这条信息属于哪个公司的。[/color]

[color=green]现在要做个查询,就是查询公司列表,同时查询这些公司没个公司最新录入的一条相关信息,这条信息可能是B表里的,可能是C表里的,也可能是D表里的,也可能是E表里的,要求只查询一条相关信息。

怎么做这个查询比较好呢。
1.查询公司的时候,再分别去查询B,C,D,E表里的企业相关信息里的最新的,然后再比较查询出来这几个表里的最新的?
2.在录入企业相关的BCDE表的时候,每录入一次,我都在A表里更新一下最新的,查询的时候直接在A表里把相关信息能直接显示出来了?[/color]
[color=red]怎么设计比较好呢,急,在。线。等。。。[/color]

  • 写回答

5条回答 默认 最新

  • guazixing 2012-06-25 12:56
    关注

    个人感觉:应该把2再改造一下,新建一个表F,在F中记录每个公司的最新信息,当BCDE表有更新时,同时更新F表(保证F表中每个公司只有一条信息),这样比较好些。
    原因:1、不会影响到原来的设计,A表不用修改
    2、各个表的职责更清晰。
    缺点:每次更新时多了一次更新(F表),
    优化方案:异步的去更新F表。

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

报告相同问题?

悬赏问题

  • ¥15 根据上述描述表示泥浆密度沿着管路的长度方向在不断变化,如何来表示泥浆密度随管路的变化,需要一个完整的程序,并且能够跑通。
  • ¥15 实现胶囊神经网络,最好可以远程操作
  • ¥15 matlabGUI绘制一个函数与其导数的图像
  • ¥20 大数据采集用Python爬取猫眼电影数据
  • ¥15 用freertos后NVIC里系统时钟部分报错
  • ¥15 后缀表达式的计算算法问题
  • ¥15 安装mid360驱动后,执行rviz_MID360.launch rviz不显示
  • ¥15 关于#人工智能#的问题:(2)设计一个GUI,允许语音和文本实现谣言的检测
  • ¥50 请教 麒麟系统挂载怎么安装
  • ¥15 如何在ns3中实现路径的自由切换