1
0
mirror of https://github.com/devcode-it/openstamanager.git synced 2024-12-26 15:54:17 +01:00

Miglioria: ottimizzazione query ricerca rapida

This commit is contained in:
Bacca97 2018-07-09 12:52:53 +02:00
parent f716aab59b
commit 485e94fd4c

View File

@ -9,7 +9,7 @@ $fields = [
'Note' => 'note',
'Note aggiuntive' => 'note_aggiuntive',
'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';
@ -18,7 +18,7 @@ foreach ($fields as $name => $value) {
$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) {
$query .= ' OR '.$value.' LIKE "%'.$term.'%"';