JQ: Seleziona più condizioni


112

Ho un json e al momento, utilizzando select per ottenere solo i dati che corrispondono a una condizione, devo filtrare in base a più condizioni.

Ad esempio:

.[] | select((.processedBarsVolume <= 5) && .processedBars > 0)

Come posso farlo?

Risposte:


251

jq supporta i normali operatori booleani e / o / no, quindi sarebbe simile a:

.[] | select((.processedBarsVolume <= 5) and .processedBars > 0)

63
fantastico, sarebbe carino se tu potessi accettare la risposta allora!
Hans Z.12

2
qualche motivo per le parentesi graffe extra in giro .processedBarsVolume <= 5?
SSC

6
No, ho solo mantenuto il differenziale con il suggerimento degli OP al minimo rilevante
Hans Z.

Sembra improbabile che a questo punto possa mai ottenere l'amato segno di spunta
JDS

2
Nota: e / o / non fanno distinzione tra maiuscole e minuscole. E / O non funzionano.
Joseph Larson
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.