Avatar billede pawhammerlund Nybegynder
04. august 2003 - 19:53 Der er 4 kommentarer

Hvordan merges to Select statements fra samme tabel?

Hejsa,

Jeg proever at skabe et view der vise den seneste dato for forskellige typer forekomst i en log tabel.

Tabellen er lig:
Opportunityid, modifydate, notes
1, 10-02-03, '10'
1, 10-04-03, '50'
1, 10-03-02, '10'
2, 10-02-03, '50'

Og jeg oensker er resultat lig
Opportunityid, 10-date, 50 date
1, 10-03-03, 10-04-03
2, null, 10-02-03

Jeg er naaet til at faa seneste dato frem for hver type:
select opportunityid, max(modifydate) '10%'
from sysdba.history
where Notes like '10%'
group by opportunityid

select opportunityid, max(modifydate) '50%'
from sysdba.history
where Notes like '50%'
group by opportunityid

men har ikke evnet at faa disse to merget til det oenskede resultat. Er der nogle der kan hjaelpe?

Paa forhand tak,

Paw
Avatar billede arne_v Ekspert
04. august 2003 - 20:03 #1
Er det ikke bare en UNION ?

(SELECT ...) UNION (SELECT ...)
Avatar billede pawhammerlund Nybegynder
04. august 2003 - 20:07 #2
Dette giver kun to kolonner i resulatet opportunityid og 10%. Tilsyneladende samles '10%' og '50%' i den ene kolonne og jeg har behov for de er hver sin attribut jeg kan identificere.
Avatar billede pierrehusted Nybegynder
06. august 2003 - 08:58 #3
Måske noget i den her stil:


select opportunityid, max(modifydate) '10%', NULL as '50%'
from sysdba.history
where Notes like '10%'
group by opportunityid

UNION

select opportunityid, , NULL as '10%', max(modifydate) '50%'
from sysdba.history
where Notes like '50%'
group by opportunityid
Avatar billede blackthorne Nybegynder
23. september 2003 - 23:24 #4
Med mindre du laver dynamisk sql, så kan du ikke lave select, med dynamisk antal kolonner, det er kun rækker der må være dynamisk.

Du bør i stedet foretage dette select i din klient kode, men du kan også opbytte en SQL tekst vha transact SQL og så udføre SQL'en vha execute statementet
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