🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.bazy-danych
2 messages
2 total messages Started by Radziwil Thu, 23 Feb 2023 01:42
Agregacja
#188722
Author: Radziwil
Date: Thu, 23 Feb 2023 01:42
21 lines
711 bytes
Witam

Widzę, że Grupy dyskusyjne popadły w niełaskę, a szkoda, bo wiele osób tutaj mogło liczyć na wsparcie :-(
Mam problem z zapytanie i nie wiem jak go rozwiązać.
Przyjmijmy, że mam tabelę Tab1, a w niej 4 rekordy:
Kol1; Kol2, Kol3
123; Adam Mickiewicz; NULL
124; Bolesław Prus; NULL
125; Henryk Sienkiewicz; NULL
124; NULL; Stefan Żeromski

Potrzebuję, aby w wyniku zapytania otrzymać 3 wiersze, z czego w wierszu dla Kol1 = 124 były uzupełnione wszystkie kolumny, czyli:
Kol1; Kol2, Kol3
123; Adam Mickiewicz; NULL
124; Bolesław Prus; Stefan Żeromski
125; Henryk Sienkiewicz; NULL

Pozdrawiam
Darek
Re: Agregacja
#188723
Author: =?UTF-8?B?QW5kcn
Date: Thu, 23 Feb 2023 14:19
34 lines
1017 bytes
W dniu 23.02.2023 o 10:42, Radziwil pisze:
> Witam
>
> Widzę, że Grupy dyskusyjne popadły w niełaskę, a szkoda, bo wiele osób tutaj mogło liczyć na wsparcie :-(
> Mam problem z zapytanie i nie wiem jak go rozwiązać.
> Przyjmijmy, że mam tabelę Tab1, a w niej 4 rekordy:
> Kol1; Kol2, Kol3
> 123; Adam Mickiewicz; NULL
> 124; Bolesław Prus; NULL
> 125; Henryk Sienkiewicz; NULL
> 124; NULL; Stefan Żeromski
>
> Potrzebuję, aby w wyniku zapytania otrzymać 3 wiersze, z czego w wierszu dla Kol1 = 124 były uzupełnione wszystkie kolumny, czyli:
> Kol1; Kol2, Kol3
> 123; Adam Mickiewicz; NULL
> 124; Bolesław Prus; Stefan Żeromski
> 125; Henryk Sienkiewicz; NULL
>
> Pozdrawiam
> Darek

SELECT sub.kol1, sub.kol2,
(SELECT x.kol3 FROM tab x WHERE x.kol1=sub.kol1 AND x.kol3 IS NOT NULL)
as kol3
FROM (SELECT kol1, kol2 FROM tab WHERE kol2 IS NOT NULL GROUP BY kol1,
kol2) as sub
ORDER BY 1

Pod warunkiem, że w żadnym wierszu nie jest wypełnione jednocześnie kol2
i kol3.

--
pozdrawiam
AS
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads