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 ?

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)

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
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.