Kopiera SQL-texten till SQL-analys i FASan och testa frågorna.
Fler exempel kommer att komma, skicka ett mail om ni har någon fråga ni vill kunna ställa mot FASan-databasen.
fasan@actus.se
Antal medlemmar per avd och avialt, med avialt som kolumner
Transform Count(*) Select AVD From FASDMED Where AVKOD=0 Group By AVD Pivot AVIALT
Antal medlemmar per avd och avialt, med avialt som kolumner, som är med i akassa
Transform Count(*) Select AVD From FASDMED Where AVKOD=0 And AKLASS>0 And AVD>0 Group By AVD Pivot AVIALT
Medlemmar per Avdelning, Avtalsområde, Kön och Åldersgrupp
Transform Count(FASDMED.PNR) As Antal
Select FASDMED.AVD,FASDARB.AVTALOMR,FASDMED.KÖN
From FASDMED Inner Join FASDARB On FASDMED.AGNR=FASDARB.AGNR And FASDMED.ASTNR=FASDARB.ASTNR
Where FASDMED.AVKOD=0
Group By FASDMED.AVD,FASDARB.AVTALOMR,FASDMED.KÖN
Pivot IIF(VAL(MID(FASDMED.PNR,1,2))>81,'Å-19',IIF(VAL(MID(FASDMED.PNR,1,2))>71,'Å20-29',
IIF(VAL(MID(FASDMED.PNR,1,2))>61,'Å30-39',IIF(VAL(MID(FASDMED.PNR,1,2))>51,'Å40-49',
IIF(VAL(MID(FASDMED.PNR,1,2))>41,'Å50-59',IIF(VAL(MID(FASDMED.PNR,1,2))>36,'Å60-65','Å>65'))))))
In ('Å-19','Å20-29','Å30-39','Å40-49','Å50-59','Å60-65','Å>65');
Antal medlemmar per län
Select FASDMED.LÄN, Texten As Namn, Count(FASDMED.PNR) As Antal
From FASDMED LEFT JOIN [Select * From TEXTER Where Typ='T' And NR1=1]. As Texten On FASDMED.LÄN=Texten.Nr2
Where FASDMED.AVKOD=0
Group By FASDMED.LÄN, TEXTEN;
Avgift per Klubb och Månad
Select Distinctrow FASDMED.KLUBB, Int(Sum(BEL01)) AS Jan, Int(Sum(BEL02)) AS Feb,
Int(Sum(BEL03)) As Mars, Int(Sum(BEL04)) As Apr, Int(Sum(BEL05)) As Maj, Int(Sum(BEL06)) As Juni,
Int(Sum(BEL07)) As Juli, Int(Sum(BEL08)) As Aug, Int(Sum(BEL09)) As Sep, Int(Sum(BEL10)) As Okt,
Int(Sum(BEL11)) As Nov, Int(Sum(BEL12)) As Dec
From FASDMRED Left Join FASDMED On FASDMRED.PNR=FASDMED.PNR
Where ÅR='YEAR(Date)' Group By FASDMED.KLUBB;
Avgift per Avdelning och Månad
Select AVD,SUM(FASDMRED.BEL01) As JAN,SUM(FASDMRED.BEL02) As FEB,SUM(FASDMRED.BEL03) As MARS,
SUM(FASDMRED.BEL04) As APRIL,SUM(FASDMRED.BEL05) As MAJ,SUM(FASDMRED.BEL06) As JUNI,
SUM(FASDMRED.BEL07) As JULI,SUM(FASDMRED.BEL08) As AUG,SUM(FASDMRED.BEL09) As SEP,
SUM(FASDMRED.BEL10) As OKT,SUM(FASDMRED.BEL11) As NOV,SUM(FASDMRED.BEL12) As DEC
From FASDMRED Where ÅR='2001' Group By FASDMRED.AVD
Antal frikoder per avdelning och månad
Select AVD,SUM(IIF(FASDMRED.FRI01>0,1,0)) As JAN,SUM(IIF(FASDMRED.FRI02>0,1,0)) As FEB,
SUM(IIF(FASDMRED.FRI03>0,1,0)) As MARS,SUM(IIF(FASDMRED.FRI04>0,1,0)) As APRIL,
SUM(IIF(FASDMRED.FRI05>0,1,0)) As MAJ,SUM(IIF(FASDMRED.FRI06>0,1,0)) As JUNI,
SUM(IIF(FASDMRED.FRI07>0,1,0)) As JULI,SUM(IIF(FASDMRED.FRI08>0,1,0)) As AUG,
SUM(IIF(FASDMRED.FRI09>0,1,0)) As SEP,SUM(IIF(FASDMRED.FRI10>0,1,0)) As OKT,
SUM(IIF(FASDMRED.FRI11>0,1,0)) As NOV,SUM(IIF(FASDMRED.FRI12>0,1,0)) As DEC
From FASDMRED Where ÅR='2001' Group By FASDMRED.AVD
Avgångna medlemmar per förbund de gått till, sedan 2000-01-01
Select FASDMED.FÖRBTILL, Texten As Namn, Count(FASDMED.PNR) As Antal
From FASDMED Left Join [Select * From TEXTER Where Typ='C' And NR1=1]. AS Texten On FASDMED.FÖRBTILL=Texten.Nr2
Where FASDMED.AVKOD>0 And FASDMED.AVDATUM>=20000101 Group By FASDMED.FÖRBTILL, TEXTEN;
Spara Personnummer för alla medlemmar i en ny tabell. (För att kunna jämföra med senare)
Select PNR Into GMED From FASDMED Where AVKOD=0
OBS. I detta fall måste Sql vara förbockad.
Ta bort Tabell.
Drop Table GMED
OBS. I detta fall måste Sql vara förbockad.
Dessa Sql-exempel, är något ni får använda på eget ansvar, de är endast exempel och bör testas
innan de används i produktion, de kan innehålla fel.