JQ: Birden çok koşul seçin


116

Bir json'ım var ve şu anda yalnızca bir koşulla eşleşen verileri almak için select kullanarak daha fazla koşula göre filtreleme yapmam gerekiyor.

Örneğin:

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

Bunu nasıl yapabilirim?

Yanıtlar:


260

jq normal Boolean operatörlerini destekler ve / veya / veya desteklemez, bu nedenle şöyle görünür:

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

65
harika, o zaman cevabı kabul etsen iyi olur!
Hans Z.12

2
Ekstra diş telleri için herhangi bir sebep var .processedBarsVolume <= 5mı?
ssc

6
Hayır, sadece OP'lerin önerisiyle farkı minimumda tuttu
Hans Z.

Bu noktada sevilen onay işaretini alması pek olası görünmüyor
JDS

2
Not: ve / veya / değil, büyük / küçük harfe duyarlıdır. VE / VEYA çalışmıyor.
Joseph Larson
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.