none
Group (или сортировка) Как обратиться выше к группе? RRS feed

  • Вопрос

  • Объясняю. Я сортирую таблицу по датам (убираю одинаковые даты). В тоже время я хочу видеть то что я убрал и поместить в отдельное поле. В общем, показываю на рисунке.

    $arr| group Login | foreach { $_.group | sort Date | select -first 1} | FT

    Рис1 - это то что есть в массиве arr
    Рис2 - это то что получается группировкой
    Рис3 - это отсортированная таблица без одинаковых дат. Но красным справа
     хотелось бы видеть отдельное поле, в которой будут данные из
    вышестоящей Group (но не знаю как обратиться к Group)

    Сам массив данных:

    "Login","DateFull","Date"
    "andrey.mukhin","29.01.2021 15:40","29.01.2021"
    "aleksandr.shubin","29.01.2021 15:00","29.01.2021"
    "konstantin.lysov","29.01.2021 15:55","29.01.2021"
    "Igor.Pekishev","29.01.2021 14:00","29.01.2021"
    "polina.proseczkaya","29.01.2021 15:08","29.01.2021"
    "nikita.ustrikov","06.11.2020 14:15","06.11.2020"
    "mariya.zhilyak","06.11.2020 02:32","06.11.2020"







    • Изменено user00431 31 января 2021 г. 16:00
    31 января 2021 г. 15:56

Ответы

  • $arr = @'
    "Login","DateFull","Date"
    "andrey.mukhin","29.01.2021 15:40","29.01.2021"
    "andrey.mukhin","29.01.2021 15:50","29.01.2021"
    "aleksandr.shubin","29.01.2021 15:00","29.01.2021"
    "konstantin.lysov","29.01.2021 15:55","29.01.2021"
    "Igor.Pekishev","29.01.2021 14:00","29.01.2021"
    "polina.proseczkaya","29.01.2021 15:08","29.01.2021"
    "nikita.ustrikov","06.11.2020 14:15","06.11.2020"
    "mariya.zhilyak","06.11.2020 02:32","06.11.2020"
    '@ | ConvertFrom-Csv
    
    
    $arr | group Login | select Name, @{N='Date';E= {$_.Group.Date | Select -First 1}}, @{N='FullDate';E={$_.Group.DateFull -join ';'}}

    1 в вашем примере инпута нехватает 1 строчки

    2 dateFull уже содержит date поэтому в последнем нет особого смысла

    $arr = @'
    "Login","Date"
    "andrey.mukhin","29.01.2021 15:40"
    "andrey.mukhin","29.01.2021 15:50"
    "aleksandr.shubin","29.01.2021 15:00"
    "konstantin.lysov","29.01.2021 15:55"
    "Igor.Pekishev","29.01.2021 14:00"
    "polina.proseczkaya","29.01.2021 15:08"
    "nikita.ustrikov","06.11.2020 14:15"
    "mariya.zhilyak","06.11.2020 02:32"
    '@ | ConvertFrom-Csv
    
    
    $arr | group Login | select Name, @{N='Date';E= {($_.Group.Date -split ' ')[0] | Select -First 1}}, @{N='FullDate';E={$_.Group.Date -join ';'}}


    The opinion expressed by me is not an official position of Microsoft


    • Изменено Vector BCOModerator 1 февраля 2021 г. 10:05
    • Предложено в качестве ответа Vector BCOModerator 1 февраля 2021 г. 13:40
    • Помечено в качестве ответа user00431 2 февраля 2021 г. 7:11
    1 февраля 2021 г. 9:25
    Модератор

Все ответы

  • $arr = @'
    "Login","DateFull","Date"
    "andrey.mukhin","29.01.2021 15:40","29.01.2021"
    "andrey.mukhin","29.01.2021 15:50","29.01.2021"
    "aleksandr.shubin","29.01.2021 15:00","29.01.2021"
    "konstantin.lysov","29.01.2021 15:55","29.01.2021"
    "Igor.Pekishev","29.01.2021 14:00","29.01.2021"
    "polina.proseczkaya","29.01.2021 15:08","29.01.2021"
    "nikita.ustrikov","06.11.2020 14:15","06.11.2020"
    "mariya.zhilyak","06.11.2020 02:32","06.11.2020"
    '@ | ConvertFrom-Csv
    
    
    $arr | group Login | select Name, @{N='Date';E= {$_.Group.Date | Select -First 1}}, @{N='FullDate';E={$_.Group.DateFull -join ';'}}

    1 в вашем примере инпута нехватает 1 строчки

    2 dateFull уже содержит date поэтому в последнем нет особого смысла

    $arr = @'
    "Login","Date"
    "andrey.mukhin","29.01.2021 15:40"
    "andrey.mukhin","29.01.2021 15:50"
    "aleksandr.shubin","29.01.2021 15:00"
    "konstantin.lysov","29.01.2021 15:55"
    "Igor.Pekishev","29.01.2021 14:00"
    "polina.proseczkaya","29.01.2021 15:08"
    "nikita.ustrikov","06.11.2020 14:15"
    "mariya.zhilyak","06.11.2020 02:32"
    '@ | ConvertFrom-Csv
    
    
    $arr | group Login | select Name, @{N='Date';E= {($_.Group.Date -split ' ')[0] | Select -First 1}}, @{N='FullDate';E={$_.Group.Date -join ';'}}


    The opinion expressed by me is not an official position of Microsoft


    • Изменено Vector BCOModerator 1 февраля 2021 г. 10:05
    • Предложено в качестве ответа Vector BCOModerator 1 февраля 2021 г. 13:40
    • Помечено в качестве ответа user00431 2 февраля 2021 г. 7:11
    1 февраля 2021 г. 9:25
    Модератор
  • Гениально. Благодарю.
    2 февраля 2021 г. 7:10