Avatar billede judas Nybegynder
28. marts 2003 - 11:50 Der er 7 kommentarer og
2 løsninger

Hjælp til query..

Jeg har to databaser som på baggrund af et GroupID hver især vil returnere et antal entries. Disse entries skal så benyttes til opslag i en ny tabel hvor bestemte kombinationer af disse vil give et nyt resultat:

Eksempel:
(på baggrund af ét GroupID)
Jeg får tallene [1,2,3,5,6,7] fra tabel 1
Jeg får tallene [5,6,8,9,12] fra tabel 2

Tabel 3 indeholder bestemte kombinationer som nu skal matches med resultaterne fra tabel 1 og 2.
Tabel 3 vil give at resultat for hver af disse kombinationer der kan forekomme fra resultatet fra tabel 1 og 2:
[(1,4),(1,5),(3,4),(6,7)]
Det vil i dette tilfælde så kun være kombinationen (1,4) der returnerer noget!

Blev det forståeligt?
Avatar billede judas Nybegynder
28. marts 2003 - 11:52 #1
Jeg laver det i C++ og kan godt lave det ved hjælp af supplerende kode - men det kunne være rart at have det i en ren query...
Avatar billede Brian Moos Lindberg Praktikant
28. marts 2003 - 11:53 #2
ikke helt... hvorfor kun (1,4) ???
Avatar billede judas Nybegynder
28. marts 2003 - 11:55 #3
arghh - (1,5) selvfølgelig - SORRY
Avatar billede Brian Moos Lindberg Praktikant
28. marts 2003 - 11:56 #4
ahh.. ok... jeg kan ikke lige hjælpe dig, men jeg lytter med... det er noget man ret tit kunne få brug for...
Avatar billede judas Nybegynder
28. marts 2003 - 12:12 #5
Lige en beskrivelse af tabellerne:

1 SourceTabel
-NodeID
-GroupID

2 DestinationTabel:
-RouterID
-GroupID

(jeg får altså en række NodeID´er og RouterID´er når jeg søger på et GroupID)

3 Paths
-PathID (PK)
-NodeID
-RouterID

(en path er beskrevet vha. en kombination af et NodeID og et RouterID)

Og det er de paths der indgår i en bestemt group jeg altså skal bruge!
Avatar billede emmek Nybegynder
31. marts 2003 - 14:21 #6
Du laver en tabel med PAthid og GroupID da kombinationen af RouterID og NodeID korrelerer 100% med PAthid.
;o) hilsen steffen
Avatar billede judas Nybegynder
01. april 2003 - 08:55 #7
Det ville bare være smart at man ved oprettelse af en router eller testnode kunne sætte den ind i den respektive tabel med tilhørende GroupID´s, istedet for at man, "manuelt", skulle finde frem til de paths det drejer sig om. Kombinationerne er jo mangfoldige ;o)
Avatar billede judas Nybegynder
01. april 2003 - 13:24 #8
Jeg har løst problemet:
Det kan sikkert godt gøres pænere, men det vil give en masse manuelt arbejde når der oprettes nye sources eller destinations!!

Jeg arbejder videre med de tabeller jeg beskrev ovenfor:

SELECT p PathID
FROM Paths p, DestinationTabel d, SourceTabel s
WHERE d.groupID = '1' AND s.groupID = '1' AND p.RouterID = d.RouterID AND p.NodeID = s.NodeID
Avatar billede judas Nybegynder
01. april 2003 - 13:27 #9
Det var vist egentligt det jeg søgte....
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