JQ: sélectionnez plusieurs conditions

113

J'ai un json et pour le moment en utilisant select pour obtenir uniquement les données qui correspondent à une condition, je dois filtrer en fonction de plusieurs conditions.

Par exemple:

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

Comment puis-je faire ceci ?

Andrei Colta
la source

Réponses:

254

jq prend en charge les opérateurs booléens normaux et / ou / non, donc cela ressemblerait à:

.[] | select((.processedBarsVolume <= 5) and .processedBars > 0)
Hans Z.
la source
64
super, ce serait bien si vous pouviez accepter la réponse alors!
Hans Z.12
2
une raison pour les accolades supplémentaires autour .processedBarsVolume <= 5?
ssc
6
Non, juste gardé le diff avec la suggestion des OP au minimum pertinent
Hans Z.30
semble peu probable d'obtenir la coche bien-aimée à ce stade
JDS
2
Remarque: le et / ou / non sont sensibles à la casse. ET / OU ne fonctionne pas.
Joseph Larson