Salve ragazzi ho la seguente query....
premesso che la query stessa lanciata da dentro Mysql risponde (2241 del totale, La query ha impiegato 0.0936 secondi.)
invece quando viene richiamata all'interno di una dataTable con <<sAjaxSource: "ajax_allsel.php">>
impiega circa 30 secondi a refreshare la tabella.....
potreste darmi una mano.....consigliate di usare indici potrebbe essere un problema? secondo voi come/dove usarli ? ma da quello che mostrano i risultati il problema non dovrebbe essere di mysql e dove posso trovarlo ??
grazie.
PHP:
SELECT tb_pianifica.*,tb_grpwbs.id AS n_gruppo,tb_grpwbs.id_collega AS collega,tb_grpwbs.id_status AS status_gruppo,tb_npp.codice AS cod_npp,tb_pm.nome AS nome_pm,tb_st.descrizione AS desc_st,tb_spec.descrizione AS desc_spec,
(CASE WHEN tb_pianifica.dt_steering <> '0000-00-00' THEN REPLACE(DATE_FORMAT(dt_steering,GET_FORMAT(DATE,'EUR')),'.','/') ELSE ' ' END) AS data_ste,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN tb_grpwbs.wbs ELSE tb_pianifica.wbs END)AS wbs,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN tb_grpwbs.notes ELSE tb_pianifica.notes END)AS notes,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN SUM(tb_pianifica.budget) ELSE tb_pianifica.budget END)AS budget,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN SUM(tb_pianifica.pianificato) ELSE tb_pianifica.pianificato END)AS pianificato,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN SUM(tb_pianifica.cap13) ELSE tb_pianifica.cap13 END)AS cap13,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN SUM(tb_pianifica.cap15) ELSE tb_pianifica.cap15 END)AS cap15,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN SUM(tb_pianifica.cap16) ELSE tb_pianifica.cap16 END)AS cap16,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN SUM(tb_pianifica.capaltri) ELSE tb_pianifica.cap16 END)AS capaltri,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN SUM(tb_pianifica.cap13+tb_pianifica.cap15+tb_pianifica.cap16+tb_pianifica.capaltri) ELSE tb_pianifica.cap13+tb_pianifica.cap15+tb_pianifica.cap16+tb_pianifica.capaltri END)AS tot_eff_a_c,
(CASE WHEN tb_pianifica.id_grpwbs <> '0' AND tb_grpwbs.id_collega='1' AND tb_grpwbs.id_status='1' THEN SUM(tb_pianifica.budget-tb_pianifica.eff_tot-tb_pianifica.cons_prev_dich+ tb_pianifica.cap13+tb_pianifica.cap15+tb_pianifica.cap16+tb_pianifica.capaltri) ELSE tb_pianifica.budget-tb_pianifica.eff_tot-tb_pianifica.cons_prev_dich+ tb_pianifica.cap13+tb_pianifica.cap15+tb_pianifica.cap16+tb_pianifica.capaltri END)AS residuo_f_a
FROM tb_pianifica
LEFT JOIN tb_grpwbs ON tb_grpwbs.id = tb_pianifica.id_grpwbs
LEFT JOIN tb_npp ON tb_pianifica.id_npp = tb_npp.id
LEFT JOIN tb_pm ON tb_pianifica.id_pm = tb_pm.id
LEFT JOIN tb_st ON tb_pianifica.id_sog_tec = tb_st.id
LEFT JOIN tb_spec ON tb_pianifica.id_spec = tb_spec.id
GROUP BY wbs
ORDER BY tb_pianifica.id_grpwbs DESC
invece quando viene richiamata all'interno di una dataTable con <<sAjaxSource: "ajax_allsel.php">>
impiega circa 30 secondi a refreshare la tabella.....
potreste darmi una mano.....consigliate di usare indici potrebbe essere un problema? secondo voi come/dove usarli ? ma da quello che mostrano i risultati il problema non dovrebbe essere di mysql e dove posso trovarlo ??
grazie.
Ultima modifica di un moderatore: