Я пытаюсь объединить разные строки в один, когда они имеют одинаковые идентификаторы, но разные значения столбцов.SQL Слияние двух строк с одинаковым идентификатором, но с разными значениями столбцов (Oracle)
Например:
(table1)
id colour
1 red
1 blue
2 green
2 red
Я хотел бы, чтобы это было комбинировать так, чтобы результат:
id colour1 colour2
1 red blue
2 green red
Или
id colour
1 red, blue
2 green, red
Или любой другой вариант выше, так что ряды каким-то образом соединены.
Любая помощь будет оценена! Заранее спасибо.
ПОЧЕМУ вы хотите это сделать? Это строго и исключительно для целей отчетности, или вы хотите использовать результат для хранения данных и/или дальнейшей обработки? Если он предназначен исключительно для отчетности: это можно сделать в SQL, но лучше сделать это в приложении для отчетов, независимо от того, что вы используете. Если он предназначен для хранения и/или дальнейшей обработки, это идея TERRIBLE. Данные в настоящее время находятся в «первой нормальной форме». Вы ищете что-то, что нарушает первую нормальную форму - вы идете к очень плохо ошибочной модели данных. – mathguy
Я отредактировал ваше сообщение, чтобы удалить тег 'merge'; 'merge' - это нечто совершенно иное и не связанное с вашей проблемой, оно связано с обновлением, вставкой и удалением в/из целевой таблицы с использованием данных в исходной таблице. – mathguy
Я упростил таблицу, чтобы получить более простой ответ, в действительности обе колонки вместе являются первичным ключом, а также внешними ключами. – LEJ