qq_29297291 2018-11-14 07:33 采纳率: 20%
浏览 770
已结题

Mysql的关联查询语句查询优化

SELECT
a.org_no orgNo,
a.rcvbl_ym rcvblYm,
SUM(IFNULL(a.rcvbl_amt, 0)) rcvblAmtTotal,
SUM(IFNULL(a.rcvbl_inprice_amt, 0)) rcvblInpriceAmtTotal,
SUM(a.city) city,
SUM(a.agriculturalLoan) agriculturalLoan,
SUM(a.renewableEnergy) renewableEnergy,
SUM(a.lowVoltagePower) lowVoltagePower,
SUM(a.nationalMajor) nationalMajor,
SUM(a.powerConstruction) powerConstruction,
SUM(a.smallReservoir) smallReservoir,
SUM(a.largeReservoirs) largeReservoirs
FROM
(SELECT
a.org_no,
a.release_date,
a.calc_id,
a.t_pq,
a.rcvbl_ym,
a.rcvbl_amt,
a.rcvbl_inprice_amt,
SUM(
CASE
WHEN b.item_code = '03'
THEN IFNULL(b.pl_amt, 0)
ELSE 0
END
) city,
SUM(
CASE
WHEN b.item_code = '04'
THEN IFNULL(b.pl_amt, 0)
ELSE 0
END
) agriculturalLoan,
SUM(
CASE
WHEN b.item_code = '07'
THEN IFNULL(b.pl_amt, 0)
ELSE 0
END
) renewableEnergy,
SUM(
CASE
WHEN b.item_code = '08'
THEN IFNULL(b.pl_amt, 0)
ELSE 0
END
) lowVoltagePower,
SUM(
CASE
WHEN b.item_code = '11'
THEN IFNULL(b.pl_amt, 0)
ELSE 0
END
) nationalMajor,
SUM(
CASE
WHEN b.item_code = '9901'
THEN IFNULL(b.pl_amt, 0)
ELSE 0
END
) powerConstruction,
SUM(
CASE
WHEN b.item_code = '9902'
THEN IFNULL(b.pl_amt, 0)
ELSE 0
END
) smallReservoir,
SUM(
CASE
WHEN b.item_code = '9904'
THEN IFNULL(b.pl_amt, 0)
ELSE 0
END
) largeReservoirs
FROM
m_a_rcvbl_flow a
LEFT JOIN m_a_rcvbl_pl_flow b ON a.id = b.rcvbl_amt_id
WHERE a.org_no IN
(SELECT
a.id
FROM
ac_org a
WHERE a.id_path LIKE
(SELECT
CONCAT(id_path, '%')
FROM
ac_org
WHERE id = "14416"))) a

            数据量大的时候很慢,有什么方法能稍微加快查询吗
  • 写回答

2条回答 默认 最新

  • devmiao 2018-11-14 11:14
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料