Gruppera och summera

Tråden skapades och har fått 1 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Örebro
  • 2009-10-14 17:58

Jag skulle vilja gruppera olika värden (säg, alla som heter Andersson) och räkna hur många de är.

Med MySQL skulle jag göra som exemplet längst ner på denna sida, men hur gör jag detta i FileMaker?

Om du har något som kan skicka SQL-förfrågningar till din MySQL-databas, så kan du skicka just det och få det svar du vill ha.

Om du är "kvar" inuti Filemaker så finns det inget lika smidigt sätt att lösa just denna förfrågan. Men det går med lite omvägar. Det beror också på hur ofta du behöver göra detta och hur fort och hur många olika värden du vill räkna.

En metod (av flera) är att skapa en relation Efternamsrelation mellan fältet Efternamn till fältet Efternamn. Dvs samma fält. Kallas även självrelation när man gör det till samma tabell. När denna relation finns kan du skapa ett beräkningsfält Antalet med detta efternamn och i det ha funktionen

Count(Efternamnsrelation::Efternamn)

Sedan kan du söka och sortera på det fältet. Så här långt kommen betyder det att alla poster vet hur många det finns med samma namn. På posten Andersson, står det tex 7, om det finns sju Andersson. Notera att denna funktion är exakt, det är inte en sökfunktion. Det betyder att Andersson-Nilsson inte hittas. Vilket kan vara precis som du vill ha det.

Att få fram endast en post per variant av efternamn finns det ingen funktion för i Filemaker, men man kan (någorlunda) lätt skapa ett manus som gör en massa saker i denna ordning: sortera på efternamn, fyll ett fält som fungerar som en flagga med ett tomt värde i alla poster (fältet dubblettflagga), loopar igenom alla poster, kollar om nästa post har samma efternamn som föregående, i så fall märk den posten som dubblett genom att tilldela fältet dubblettflagga värdet dubblett, avsluta med att söka fram alla poster som inte innehåller något i fältet dubblettflagga och presto (ok, kanske inte riktigt presto), så har du synligt en variant per efternamn med ett antal intill. Sortera detta så var det klart.

1
Bevaka tråden