Avatar billede diskoclaus Nybegynder
23. marts 2009 - 10:58 Der er 2 kommentarer

Samling af poster fra db

Hej eksperter,

Jeg har en udfordring!

Jeg har følgende felter i en DB:

Opkaldnummer (det nummer jeg ringer fra)
Modtagernummer (det nummer jeg ringer til)
Dato (dato for opkald)
Type (typen af opkald: SMS, MMS, VOICE, GPRS osv.)
Beløb (hvad koster det givne opkald)

Ovenstående giver ca. 70.000 records pr. mdr.

Jeg har nu grupperet det således at jeg pr. dag kun får listet mine opkald grupperet pr. type med en total.

Eksempelvis:
DATO | TYPE | ANTAL | BELØB
22-03-2009 | VOICE | 2 | 66,93
23-03-2009 | SMS | 100 | 40,00
23-03-2009 | VOICE | 4 | 23,53

Det virker godt nok, men det er jo ikke specielt specificeret. Ved at gruppere dem giver det mig ca. 5.000 records pr. mdr.

Nu ville jeg gerne have en kollonne ekstra med følgende info:
Modtagernummer;beløb

Altså skulle den ind i min tabel der så sådan her ud:
DATO | TYPE | ANTAL | BELØB | SPEC
23-03-2009 | VOICE | 4 | 23,53 | modtagernummer;22,53#modtagernummer;52,93#modtagernummer;1,30#modtagernummer;72,29

Jeg ønsker ikke at mit "modtagersystem / det system der skal bruge beløbet til ngoet" skal bombarderes med alle de poster (70.000 poster pr. mdr) - jeg ønsker egentlig kun beløbene, men det kunne være lidt rart med spec. (uden at de reelt skal bruges til noget set med økonomiske øjne)

Grupperingen er lavet med en simpelt "group by", men kan ikke lige dreje hvordan jeg skal få en masse linier ned i en linie ?

Takker
Avatar billede aaberg Nybegynder
23. marts 2009 - 12:12 #1
Jeg tror ikke det er muligt at gøre dette med en sql-sætning i MS Sql. Du kan gøre det med en stored procedure og en cursor.

Se eventuelt denne side om cursorer:
http://msdn.microsoft.com/en-us/library/ms180169.aspx
Avatar billede arne_v Ekspert
13. april 2009 - 00:41 #2
Eller bare en helt normal SELECT som returnerer flere rækker som applikationen så kombinerer til en enkelt række.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester