Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
user128 Member Откуда: Сообщений: 5 |
Нужно из иерархии (снимок 1) сделать плоскую структуру, т.е. чтобы у каждого уровня иерархии был свой столбец (ID_Level1, Name_Level1, ID_Level2, Name_Level2, ID_Level3, Name_Level3) Вот мой код: select DISTINCT level1.id_level_1,level1.Name_level_1,level2.id_level_2,level2.Name_level_2 from ( (SELECT DISTINCT ID as id_level_1 , Name as Name_level_1 FROM producthierarchy WHERE level = 1 GROUP BY ID , Name limit 2) as level1 , (SELECT DISTINCT ID as id_level_2 , Name as Name_level_2 FROM producthierarchy WHERE level = 2 GROUP BY ID , Name limit 2) as level2 , (SELECT DISTINCT ID as id_level_3 , Name as Name_level_3 FROM producthierarchy WHERE level = 3 GROUP BY ID , Name limit 2) as level3 ) Объясните пожалуйста почему когда я делаю этот запрос у меня вместо 2 строк получается 4 ?? И можно ли написать это в цикле т.е. чтобы по мере увеличения level (например добавляется 4) было ID_Level4, Name_Level4 и т.д.
К сообщению приложен файл. Размер - 16Kb Сообщение было отредактировано: 14 сен 19, 00:35 |
|
13 сен 19, 20:44 [21970733] Ответить | Цитировать Сообщить модератору |
felix_ff Member Откуда: Moscow Сообщений: 1698 |
user128, ваш код не для ms sql, а скорее для MySql Вам нужно решение на какой платформе? |
13 сен 19, 22:10 [21970750] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |