Разложить таблицу на несколько столбцов по значению одного столбца - PullRequest
2 голосов
/ 25 марта 2020

У меня есть таблица mysql, которая содержит серию измерений температуры, сделанных различными датчиками:

timestamp | sensor | temperature
--------------------------------
1.0       | a      | 10
1.1       | b      | 20
1.2       | c      | 30
2.0       | a      | 11
2.1       | b      | 19
2.2       | c      | 32
...

Мне нужна таблица, подобная этой:

timestamp | a    | b    | c
---------------------
1.0       | 10   | Null | Null
1.1       | Null | 20   | Null
1.2       | Null | Null | 30
2.0       | 11   | Null | Null
2.1       | Null | 19   | Null
2.2       | Null | Null | 32

В моем случае есть много датчиков a, b, ... z и со временем можно добавить больше датчиков.

Мне нужен запрос, который мне не нужно настраивать при добавлении новых датчиков. Так что SQL должен сделать что-то вроде:

  1. Сканирование таблицы и поиск всех датчиков (a, b, c, d ...)
  2. возврат таблицы результатов с столько столбцов, сколько имеется датчиков (+ столбец отметки времени)

В таблице результатов будет столько строк, сколько во входной таблице, и еще на один столбец больше, чем есть отдельные датчики (для отметки времени).

Любая помощь очень ценится:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...