Я хочу объединить набор данных (идентификатор, оценка, поле1, поле2, поле3) по идентификатору и включить другие столбцы, отсортированные по счету, в какой-то список / столбец, чтобы их можно было сериализовать в следующий объект.
collect_set
занимает только один столбец, поэтому я не уверен, как все поля в столбец за исключением concat.Мне также нужно ограничить колонку списка тремя тестами.Полученный набор данных будет выглядеть примерно так: Integer id, Array(List)
.
id, [[score, field1, field2, field3], [score, field1, field2, field3], [score, field1, field2, field3]]
class Student {
private int id;
private List<Test> tests;
}
class Test {
private int score;
private String field1;
private String field2;
private String field3;
}
Например:
id1,99,"just","some","text"
id1,95,"just","more","text"
id1,75,"still","more","text"
id1,88,"yet","more","text"
приведет к:
id1,[[99,"just","some","text"], [95,"just","more","text"], [88,"yet","more","text"]]
Это отличается отранее задаваемые вопросы в том смысле, что он включает в себя сортировку и ограничение вывода, поэтому для ответа требовалась функция Windows, а для ответов на другие вопросы - нет.