Avatar billede dankerlinnet Nybegynder
17. maj 2011 - 22:20 Der er 2 kommentarer og
1 løsning

Crosstab funktionen !

Har lidt problemer med crosstab pivot funktionen.

Har et datasæt som følger:

KontaktID  |  Investigationnme  |  Reply
-----------------------------------------
1001      |                1  |      0,5
1001      |                2  |      0,22
1001      |                3  |      0,25
1001      |                4  |      0,242
1001      |                5  |      0,56
1001      |                6  |      0,232
1002      |                1  |      0,5
1002      |                2  |      0,22
1002      |                3  |      0,5
1002      |                4  |      0,22

.....


Den vil jeg gerne have lavet en crosstab på med følgende resultat:

KontaktID  |  1    |  2    |  3    |  4      |  5  ....
-----------------------------------------------------------
1001      |  0,5  |  0,22  | 0,25  |  0,242  |  0,56 ... 
1001      |  0,5  |  0,22  | 0,5  |  0,22  |      ... 


Jeg har forsøgt med:

[SQL] select * from crosstab(
  'select KontaktID, INVESTIGATIONNME, REPLY from investigation_unique_selected order by 1',
  'select m from generate_series(1,19) m'
) as (
  KontaktID text,
  "1" text,
  "2" text,
  "3" text,
  "4" text,
  "5" text,
  "6" text,
  "7" text,
  "8" text,
  "9" text,
  "10" text,
  "11" text,
  "12" text,
  "13" text,
  "14" text,
  "15" text,
  "16" text,
  "17" text,
  "18" text,
  "19" text
);

[Err] ERROR:  function crosstab(unknown, unknown) does not exist
LINE 1: select * from crosstab(
                      ^
HINT:  No function matches the given name and argument types. You might need to add explicit type casts.
Avatar billede dankerlinnet Nybegynder
19. maj 2011 - 21:20 #1
Avatar billede dankerlinnet Nybegynder
22. maj 2011 - 16:18 #2
Efter at have tilføjet moduletv"tablefunc" fungerer ovenstående query, men returnerer "null" værdier i alle rækker.

J
Avatar billede dankerlinnet Nybegynder
22. maj 2011 - 18:31 #3
Ovenstående fungerer, så længe man har tablefunc modulet installeret og beholder "order by 1" i query'en.

Jakob
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