JQ: Выберите несколько условий

116

У меня есть json, и на данный момент я использую select, чтобы получить только данные, соответствующие одному условию, мне нужно фильтровать на основе большего количества условий.

Например:

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

Как я могу это сделать?

Андрей Колта
источник

Ответы:

260

jq поддерживает обычные логические операторы и / или / нет, поэтому это будет выглядеть так:

.[] | select((.processedBarsVolume <= 5) and .processedBars > 0)
Ганс З.
источник
65
отлично, было бы неплохо, если бы вы тогда приняли ответ!
Hans Z.
2
какая причина для лишних скоб .processedBarsVolume <= 5?
ssc
6
Нет, просто свел разницу с предложением OP к соответствующему минимуму
Hans Z.
похоже, вряд ли когда-нибудь получится любимая галочка на этом этапе
JDS
2
Примечание: символы и / или / not чувствительны к регистру. И / ИЛИ не работают.
Джозеф Ларсон