MYSQLで年間データを集計するSQLを作っています。
現在、
入庫テーブル:tbl_nyuko 125458件
販売テーブル:tbl_hanbai 365570件
入っているデータが入っているのですが、下記SQLを発行すると2時間たっても結果が表示されません、、
何か遅くなる原因や対策方法など教授して頂ければうれしいです
やりたいのは大分類ごと、得意先ごとの販売金額を集計したいです
tbl_nyukoのインデックス:nyukoday、originalno
tbl_hanbaiのインデックス:sday、serialno、tokuisakino
SQL
SELECT t.daino,h.tokuisakino,h.tokuisakiname,sum(h.hanbaisu * n.tanka),h.hday FROM tbl_hanbai h LEFT OUTER JOIN tbl_nyuko n ON h.serialno = n.originalno and DATE(h.sday) = DATE(n.nyukoday) LEFT OUTER JOIN m_tokuisaki t ON h.tokuisakino = t.tokuisakino where h.hday BETWEEN '2021/04/17 00:00:00' AND '2022/03/31 23:59:59' AND t.daino = 0 GROUP by t.tokuisakino order by t.daino,t.tokuisakino
EXPLAINを実行してみました。
回答いただいた、DATE(h.sday) = DATE(n.nyukoday)も試しましたが、1時間ほど返ってこなかったので諦めました、、
まだ回答がついていません
会員登録して回答してみよう