Cześć wszystkim. Czy ktoś z Was wie może jak mogę wykonać takie grupowanie danych w SQLu aby wyświetlić dane tak jak przedstawiłem na rysunku?
Jakim zapytaniem mogę wyświetlić te dane?
- Rejestracja: dni
- Ostatnio: dni
- Postów: 23
0
- Rejestracja: dni
- Ostatnio: dni
- Postów: 205
2
Potrzebujesz funkcji agregującej, która potrafi łączyć stringi. Jaka to dokładnie funkcja to już zależy pewnie od bazy danych. Tu masz przykład dla MySQL:
https://stackoverflow.com/questions/149772/how-to-use-group-by-to-concatenate-strings-in-mysql
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Kraków
- Postów: 2003
2
Mógłbyś użyć GROUP BY do pogrupowania po kategorii oraz STRING_AGG() do sklejenia nazwy produktu w obrębie danej grupy.
T_SQL
PostrgreSQL - na dole tabelki
- Rejestracja: dni
- Ostatnio: dni
- Postów: 20
0
Dzień dobry!
Coś takiego skleiłem ;)
SELECT kategoria,
(SELECT STUFF((SELECT ', '+produkt from owoce_i_warzywa where kategoria=oiw.kategoria FOR XML PATH('')),1,2,'')) as lista
FROM owoce_i_warzywa as oiw
GROUP BY kategoria
Pozdrawiam serdecznie
Mienio