请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

hannanjd
金牌服务用户   /  发表于:2019-6-5 15:40  /   查看:2996  /  回复:4
1金币
3个表格的联合查询,不知道是不是用的IN,所以查询起来非常慢。。

大概每次查询要转差不多1分多钟,但是其实数据不多  总共才1000多条数据!



最佳答案

查看完整内容

你可以参考我给你写的SQL试一下,看下效果

4 个回复

倒序浏览
最佳答案
最佳答案
Eric.Liang讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-6-5 15:40:13
来自 3#
  1. with cte as(
  2. select dd.ID,dd.报价表ID,dd.下单时间 from "订单表" as dd
  3. left join "报价表" as bj
  4. on dd.报价表ID = bj.ID
  5. ),cte1 as(
  6. select cte.ID,cte.报价表ID,bjmx.询价表ID,cte.下单时间 from "报价明细" as bjmx
  7. inner join cte
  8. on cte.报价表ID = bjmx.报价表ID
  9. ),cte2 as(
  10. select cte1.ID as 订单ID,cte1.报价表ID,cte1.下单时间,xj.* from cte1
  11. inner join "询价表" xj
  12. on cte1.询价表ID = xj.ID
  13. )

  14. select * from cte2
复制代码
你可以参考我给你写的SQL试一下,看下效果

评分

参与人数 1满意度 +5 收起 理由
amtath + 5 很给力!

查看全部评分

回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-6-5 16:31:35
2#
这样问你吧,视图是三个表的联合查询,那这3个表分别在有多少数据呢?
你这个视图很可能生成就很慢呢

你这个光凭帖子直接找不出问题的解决方法的,最好能远程一下
回复 使用道具 举报
hannanjd
金牌服务用户   /  发表于:2019-6-6 11:03:58
4#
Eric.Liang 发表于 2019-6-5 18:12
你可以参考我给你写的SQL试一下,看下效果

感谢! 效率比我自己写的高多了
回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-6-6 11:55:02
5#
hannanjd 发表于 2019-6-6 11:03
感谢! 效率比我自己写的高多了

那你赶紧给我们的小哥哥最佳答案啊~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部