Avatar billede tox-man Nybegynder
27. oktober 2003 - 23:28 Der er 5 kommentarer

fra rækker til kolonner

Bag denne kryptiske overskrift ligger noget så simpelt som:

Er det muligt at lave følgende i et query ? Jeg har tænkt lidt på det et stykke tid, og kommet frem til at det må kunne lade sig gøre :)

Jeg har en række priser, hvor jeg godt kunne tænke mig at have en oversigt over hvor mange varer der er solgt til en bestemt pris en enkelt dag.

Priserne hentes ud med:
select distinct theprice from VIEW_WEEKREPORTBASIC

THEPRICE
------------------------
100
123
145
160


og dagene, pris samt antal hentes ud med:

select day,theprice,numbers from VIEW_WEEKREPORTBASIC order by DAY

DAY              THEPRICE  NUMBERS
-----------------------------------------
15-09-2003      123        5     
15-09-2003      145        6     
16-09-2003      100        2
16-09-2003      145        7
16-09-2003      160        2



Og her er det så at jeg gerne ville have det samlet til:

DAY          100  123  145  160         
-----------------------------------------
15-09-2003          5    6             
16-09-2003    2          7    2


Er det muligt vha. 1 query ?
Avatar billede cwb Nybegynder
28. oktober 2003 - 09:01 #1
Du har jo selecteret de tal ud som du skal bruge. Er det ikke bare et spørgsmål om hvordan de vises skal vises ?

Hvor er det du vil have tallene vist ?
Avatar billede tox-man Nybegynder
28. oktober 2003 - 10:14 #2
jov.. det er det jo et eller andet sted.. men problemet er jo at hvis det skal laves i et eller andet program.. php or so.. så skal der jo stadigvæk en hulens masse queries til, hvis man skal query ud for hver pris for hver dag.. - det kan hurtigt blive til en hel del..
Avatar billede cwb Nybegynder
28. oktober 2003 - 10:20 #3
nej du har din select day, theprice, numbers from view_weekreportbasic order by day, theprice

den giver vel egentlig de data du skal bruge.

Så skal du bare lave en while not eof på din query og lave linie for linie
Avatar billede tox-man Nybegynder
28. oktober 2003 - 11:14 #4
det lyder meget nemt.. men hvordan gøres det ?
Avatar billede cwb Nybegynder
28. oktober 2003 - 12:47 #5
Jeg kan give dig et par tips til hvordan det løses men hele løsningen vil jeg ikke begynde at skrive. Du kan heller ikke nøjes med en query men med 3.

Det du skal gøre er at hælde prisen fra din VIEW_WEEKREPORTBASIC tabel ind i et array. Hæld herefter day ind i et andet array. Nu skal du så løbe de to array's igennem. for hver post i dit array skal du så åbne din query som henter numbers. denne query skal have følgende where sætning where day = :$day and theprice = :$price. For ikke at du skal skrive denne query gang på gang så kan du med fordel lave en function med dag og pris som parameter og som returnere numbers.

Håber dette kan hjælpe dig lidt på sporet.
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