У меня есть проект powershell, над которым я работаю, это чтение данных из базы данных с помощью функции, затем я использую конвейер для фильтрации этих данных, чтобы найти то, что я хотеть. Одним из требований является то, что я должен отображать все нерелевантные данные, а также данные, которые фильтруются.Используйте конвейер для отображения отфильтрованных данных и данных, отфильтрованных.
Get-Foo($Connection) |
Group Bar|
? Count -eq 2 |
? {$_.Group.Foobar -contains "A" -and $_.Group.Foobar -contains "B" -or $_.Group.Foobar -contains "A" -and $_.Group.Foobar -contains "C"} |
Поэтому в основном я хочу, чтобы вывести все записи, которые содержат либо только A и B или только А и С, но я также хочу, чтобы отобразить все записи, которые не содержат этого.
Sample Data:
(A, B, C, D, E)
(A, B)
(A, B, C, D)
(A, B, E)
(A)
(A, C)
Current Output:
(A, B)
(A, C)
Required Output
(A, B, C, D, E)
(A, B, C, D)
(A, B, E)
(A) - List all the false outcomes of filtering
(A, B) - Then list the true
(A, C)
Почему бы не перебрать данные с помощью оператора 'if' и создать два массива, один с данными, которые соответствуют текущему фильтру' where', а не тому, что нет? – arco444
@PetSerAl Как бы я мог потом отображать объекты, которые отфильтровываются? –
Ваш образец и необходимый результат не кажутся мне верными ?! Все, кроме одного образца * (A) *, содержат (A и B) или (A и C)? –