顾得豹 2018-11-16 06:09 采纳率: 0%
浏览 415

关于单表好和表关联好的问题

如果我要查询列表数据,数据是3个表关联查询出来的,例如,文章表t_article(id,typeId,name),
分类表 t__type(id,typeName),文章分类关联表 t_article_type(id,articleId,typeId),这样的表结构,
我现在需要查询文章列表,并带上分类信息,可以实现的方式有2中
1,一个sql 直接关联三个表,在t_article实体中添加分类的信息,直接就可以查询出来。
2,查询单表,先查询article,然后在foreach获取的article列表,在列表里面根据typeId查询出分类的信息。再返回list

            ![](http://b289.photo.store.qq.com/psb?/V138ML9F4LfPyG/8iugzUuy53ocC*1ge8FX7QeEa2t.OhOHjtm7xt3b3i4!/b/dCEBAAAAAAAA&bo=8AHkAvAB5AIBACc!&rf=viewer_311)
            技术用mybatis,我看别人都说第二种单表会更好点,因为单表都缓存了
  • 写回答

1条回答 默认 最新

  • 我的茶馆 2018-11-16 09:14
    关注

    1、使用一个sql关联3个表查询,数据量如果很大连表查询效率比较低,因为连表查询有笛卡尔积要处理;
    2、先查询文章表获取到typeId然后再使用exist或者in关键字查询文章分类表sql查询效率比第一种要好。

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog