Задание Дан результат запроса базе данных ____________________ _______

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Задание #1
Дан результат запроса к базе данных:
_______________________________
| x | grp_y | y | val |
|_______|_______|_______|_______|
| 'Jan' | 1 |'Vasya'| 9 |
| 'Jan' | 2 |'Petya'| 3 |
| 'Mar' | 1 |'Vasya'| 6 |
| 'Mar' | 2 |'Petya'| 4 |
| 'Feb' | 2 |'Petya'| 2 |
|_______|_______|_______|_______|
(только пример, данных может быть больше).
Результат представлен на сервере в виде списка(массива) словарей(хэш-таблиц), и сериализованным в JSON, передается на сторону клиента асинхронным запросом.
Задача: используя HTML, JavaScript и любой JS-фреймворк (или иные инструменты, работающие в браузере без установки дополнений), отобразить на клиентской стороне таблицу, где в первой строке представлены все уникальные значения из колонки 'x', в первом столбце -- уникальные значения из колонки 'y', а в остальных ячейках таблицы -- значения из колонки 'val', взятое из строки исходной выборки, с соответствующими 'x' и 'y' (предусмотреть случаи с отутсвием значений).
Пример:
_______________________________
| | Jan | Mar | Feb |
|_______|_______|_______|_______|
| Vasya | 1 | 4 | 0 |
| Petya | 6 | 3 | 6 |
|_______|_______|_______|_______|
* При желании, можно показать работу серверной части: запрос к БД, извлечение и обработка данных, отправка в нужном виде на сторону клиента.