Miglioria: ottimizzazione query ricerca rapida

This commit is contained in:
Bacca97 2018-07-09 12:52:53 +02:00
parent f716aab59b
commit 485e94fd4c
1 changed files with 2 additions and 2 deletions

View File

@ -9,7 +9,7 @@ $fields = [
'Note' => 'note', 'Note' => 'note',
'Note aggiuntive' => 'note_aggiuntive', 'Note aggiuntive' => 'note_aggiuntive',
'Buono d\'ordine' => 'buono_ordine', 'Buono d\'ordine' => 'buono_ordine',
'Righe' => '(SELECT GROUP_CONCAT(descrizione SEPARATOR \' -- \') FROM co_righe_documenti WHERE co_righe_documenti.iddocumento = co_documenti.id)', 'Righe' => 'righe.descrizione',
]; ];
$query = 'SELECT *, co_documenti.id, co_tipidocumento.descrizione AS tipologia'; $query = 'SELECT *, co_documenti.id, co_tipidocumento.descrizione AS tipologia';
@ -18,7 +18,7 @@ foreach ($fields as $name => $value) {
$query .= ', '.$value." AS '".str_replace("'", "\'", $name)."'"; $query .= ', '.$value." AS '".str_replace("'", "\'", $name)."'";
} }
$query .= ' FROM co_documenti INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id WHERE idanagrafica IN('.implode(',', $idanagrafiche).') '; $query .= ' FROM co_documenti INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id LEFT JOIN (SELECT GROUP_CONCAT(descrizione SEPARATOR " -- ") AS "descrizione", iddocumento FROM co_righe_documenti GROUP BY iddocumento) righe ON righe.iddocumento=co_documenti.id WHERE idanagrafica IN('.implode(',', $idanagrafiche).') ';
foreach ($fields as $name => $value) { foreach ($fields as $name => $value) {
$query .= ' OR '.$value.' LIKE "%'.$term.'%"'; $query .= ' OR '.$value.' LIKE "%'.$term.'%"';