2012-01-20 8 views
0

グループで何らかの問題が発生しており、問題を解決できませんでした。良い成果を達成するためには何ができるでしょうか?グループでのパフォーマンスの問題

select 
    `s`.`RECNO` AS `RECNO`, 
    `s`.`CTRL_ACIL` AS `CTRL_ACIL`, 
    `s`.`OZEL_KOD` AS `OZEL_KOD`, 
    `s`.`KULLANICI` AS `KULLANICI`, 
    `s`.`TARIH` AS `TARIH`, 
    `s`.`DURUM` AS `durumNo`, 
    `se`.`FIRMA_UNVANI` AS `FIRMA_UNVANI`, 
    `se`.`ADRES_ISTEL` AS `ADRES_ISTEL`, 
    `se`.`RECNO` AS `servis_id`, 
    `i`.`RECNO` AS `REFERANS_NO`, 
    `i`.`YAPILANLAR_M` AS `YAPILANLAR_M`, 
    `m`.`MUSTERI_UNVANI` AS `MUSTERI_UNVANI`, 
    (case `s`.`DURUM` when _utf8'0' then _utf8'Aç?k' when _utf8'1' then _utf8'Kapal?' end) AS `DURUM`, 
    format(sum((`d`.`MIKTAR` * `d`.`B_FIYAT`)),2) AS `TALEP_TUTAR`, 
    format(sum((`d`.`ONAY_MIKTAR` * `d`.`B_FIYAT`)),2) AS `ONAYLANAN_TUTAR` 
    from 
    (((((`siparis` `s` left join `siparis_det` `d` on((`s`.`RECNO` = `d`.`SRECNO`))) left join `servisler` `se` on((`s`.`servis_id` = `se`.`RECNO`))) left join `isemri_det` `de` on((`s`.`ISEMRIDET_RECNO` = `de`.`RECNO`))) left join `isemri` `i` on((`i`.`RECNO` = `de`.`ISEMRI_RECNO`))) left join `musteri_tan` `m` on((`m`.`RECNO` = `i`.`MUSTERI_RECNO`))) 
    group by 
    `s`.`RECNO` 
    order by 
    `s`.`RECNO` desc 

答えて

1

これらのフィールドにインデックスを追加します。

siparis: (RECNO), (servis_id), (ISEMRIDET_RECNO) 
siparis_det: (SRECNO) 
servisler: (RECNO) 
isemri_det: (RECNO), (ISEMRI_RECNO) 
musteri_tan: (RECNO) 
isemri: (RECNO), (MUSTERI_RECNO) 

これは、パフォーマンスを向上させる必要があります。

クエリはビューのクエリのように見えます。ビューを使用していますか?ビューのパフォーマンスは、単純なクエリのパフォーマンスよりも低くなる可能性があります。あなたは正しいです

MySQL VIEW as performance troublemaker

+0

は、それがビューからです。 – ilhan

関連する問題