MySql преобразование строки в столбец - PullRequest
0 голосов
/ 30 октября 2018

У меня есть запрос MySQL, который дает следующий результат, enter image description here

Используется запрос

SELECT  modi, aid FROM (SELECT 
 GROUP_CONCAT(id) his,
an_id aid, 
GROUP_CONCAT(m_id) modi
FROM 
ah 
GROUP BY an_id, m_id) t1
GROUP BY aid, modi
order by aid;

Теперь мне нужна MySQL query which will give me a result set where if column aid has the same value in two rows should create a new column with same aid and modi`.

Например, первые две строки на изображении совпадают с aid, но отличаются modi. Результат, который мне нужен, должен иметь 3 столбца и строка должна выглядеть так:

aid           modi                  modi2
27     6,6,6,6,6,6,6,6,6              8

Я очень новичок в SQL. Заранее спасибо

1 Ответ

0 голосов
/ 30 октября 2018

Ну, один из методов:

SELECT aid, min(modi) as modi1, max(modi) as modi2
FROM (SELECT an_id as aid, 
             GROUP_CONCAT(m_id) as modi
      FROM annotation_history ah
      GROUP BY an_id
    ) t1
GROUP BY aid
HAVING min(modi) <> max(modi);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...