Diciamo che ho i documenti con i seguenti campi: {field1, field2, ... fieldn}
elasticsearch confronto tra i campi
Ho bisogno di eseguire alcune query in cui alcune delle condizioni richiederà un confronto tra due o più campi. come fieldX = fieldY
In SQL standard, un esempio potrebbe essere:
SELECT * FROM Table1 WHERE farePrice>100 AND originRegion = destinationRegion
I'be leggendo alcuni documenti, e sembra "script" potrebbe essere l'unico modo per raggiungere questo obiettivo? O ci sono altre opzioni?
Grazie mille, questo funziona. Suppongo che lo scripting sia l'unico modo per confrontare i campi tra di loro. Lo scripting ha un impatto negativo sulla performance? – jdiaz4517
Lo scripting è in genere intenso per la CPU. –
Per ES 5.0+ è necessario utilizzare la query anziché filtrare all'inizio, ad esempio: '" query ": {" bool ": {" must ": {" intervallo ": ...}}," filtro ": ...}': https://stackoverflow.com/questions/40519806/no-query-registered-for-filtered – AJP