Avatar billede gimle007 Praktikant
20. maj 2008 - 07:41 Der er 3 kommentarer og
1 løsning

Lave SELECT på flere tabeller

Jeg ved godt at jeg er lidt grøn på dette område. Men det er jo også derfor vi hjælper hinanden...

Jeg har 3 tabeller i den db.

Hver tabel har 4 rækker.

ID, Nummer, PNummer, SNummer.

I række PNummer og SNummer skal jeg finde alle de poster der har en bestem værdi. F.eks. "25125"

Det skal laves sådan at man kan søge fra en www side, hvor man bare skal taste 25125 ind og så skal der laves en sql streng, der kan tjekke i alle 3 tabeller om 25125 eksisterer i PNummer og SNummer...

Det skal ikke laves i en forespørgelse men kun med en sql. Kan det lade sig gøre?
Avatar billede pierrehusted Nybegynder
20. maj 2008 - 08:07 #1
F.eks. sådan her (hvis jeg har forstået dit problem):

SELECT ID, Nummer, PNummer, SNummer , 't1' as Tabelnavn
FROM [tabel1]
WHERE PNummer = '25125' OR SNummer = '25125'
UNION
SELECT ID, Nummer, PNummer, SNummer , 't2' as Tabelnavn
FROM [tabel2]
WHERE PNummer = '25125' OR SNummer = '25125'
UNION
SELECT ID, Nummer, PNummer, SNummer , 't3' as Tabelnavn
FROM [tabel3]
WHERE PNummer = '25125' OR SNummer = '25125'

Ved at tilføje  "'t1' as Tabelnavn", så kan du også se i resultatet hvorfra posten stammer.
Avatar billede gimle007 Praktikant
20. maj 2008 - 08:12 #2
Hvad betyder ONION?
Avatar billede ladyhawke Novice
20. maj 2008 - 08:16 #3
ikke onion med union: det betyder forening, altså "foreningsmængden" mellem de to tabeller på hver side af union...
Avatar billede gimle007 Praktikant
20. maj 2008 - 08:53 #4
Takker, det virker perfekt...
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