Raport z bazy logów z inaczej poukładanymi danymi

0

Cześć,

Mam tabelę logów, gdzie dla każdego obiektu (1,2,3) wypisywane są logi systemowe (a,b,c,d,x,y) i ich data.

id	log	date
1	x	2021.01.01
2	y	2021.01.01
3	x	2021.01.01
2	a	2021.01.01
3	b	2021.01.01
1	x	2021.01.01
1	c	2021.01.01
1	x	2021.01.01
2	d	2021.01.01

Chciałbym móc tworzyć raporty, gdzie poszczególne logi będą kolumnami i dla niektórych przypadków zliczać ilość wystąpień w danym okresie, a dla innych sam fakt czy występują(Tak/Nie)
Data od 2021.01.01 do 2021.01.02

id	x	y	
1	3	Nie
2	0	Tak
3	0	Nie

Jak się za to najefektywniej zabrać? Baza to MsSQL, ale bardziej zależy mi na poznaniu samej koncepcji, także możemy przyjąć, że to dowolny SQL

3

Zacznij od https://docs.microsoft.com/en-us/sql/t-sql/queries/from-using-pivot-and-unpivot?view=sql-server-ver15 a jak masz nieokreśloną ilość kolumn w piwocie to https://stackoverflow.com/questions/10404348/sql-server-dynamic-pivot-query . Dla określenia tak/nie może użyć casa (https://docs.microsoft.com/en-us/sql/t-sql/language-elements/case-transact-sql?view=sql-server-ver15) na podstawie ilości wystąpień (jak ilość większa od zero to Tak jak nie to nie ).

1 użytkowników online, w tym zalogowanych: 0, gości: 1