Avatar billede casch Nybegynder
14. maj 2003 - 23:52 Der er 12 kommentarer og
1 løsning

Forespørgsel på tværs af forespørgsler med en fællesnævner

Jeg er ikke lige en haj til access databaser men har lavet en database over vores edb udstyr. Nu har jeg så problemet at jeg gerne vil have en mulighed for at søge på adresse og så få en liste over alt det udstyr der står der. Udstyret er delt op i 3 kategorier: pc, printere og skærme.

Så mit spørgsmål går på hvordan kan jeg bruge adresse som søgekriterie og så få en samlet liste over udstyret?
Avatar billede arne_v Ekspert
14. maj 2003 - 23:55 #1
Jeg er ikke helt sikker på hvad du vil.

Men formentlig er det:

SELECT * FROM tabel WHERE felt1=x OR felt2=x or felt3=x;

eller:

(SELECT * FROM tabel1 WHERE felt=x) UNION
(SELECT * FROM tabel2 WHERE felt=x) UNION
(SELECT * FROM tabel3 WHERE felt=x)

du leder efter.
Avatar billede jkrons Professor
14. maj 2003 - 23:56 #2
Hvordan er dine tabeller struktureret?
Avatar billede casch Nybegynder
15. maj 2003 - 00:01 #3
arne v: Jeg er ikke helt med hvor du vil have jeg skal skrive det

jkrons: Tabellerne har nogle overlapninger med adresse informationer og derudover er der nogle hardware beskrivelse (processor, ram, hd, skærmstørrelse...)
Der behøver ikke være kolloneoverskrifter hvis det skulle gøre det nemmere
Avatar billede arne_v Ekspert
15. maj 2003 - 00:04 #4
Den første query søger efter samme værdi i 3 felter.

Den anden query søger efter samme værdi i 3 tabeller (og ligger
resultaterne nedenunder hinanden).

Det lyder måske som det er det sidste du skal bruge.

Og du kan jo bare ligge SQL'en ind i din query (tabel og feltnavne
skal naturligvsi rettes til).
Avatar billede casch Nybegynder
15. maj 2003 - 00:06 #5
ok nu ikke for at lyde helt dum, men hvordan bruger jeg sql i databasen?
Avatar billede arne_v Ekspert
15. maj 2003 - 00:09 #6
Når du åbner en query kan du vælge 3 views:
  data
  design
  SQL
Avatar billede casch Nybegynder
15. maj 2003 - 00:15 #7
kan du skrive helt nøjagtig hvad formlen skal hedde hvis vi siger at tabellerne hedder: "pc", "skærm", "printer". Og det der overlapper alle 3 tabeller er "adresse"
Avatar billede arne_v Ekspert
15. maj 2003 - 00:17 #8
Ja men jeg skal også vide hvilke felter der skal vises fra tabellerne.
Avatar billede casch Nybegynder
15. maj 2003 - 00:23 #9
nu er det jo ikke meningen at du skal lave alt arbejdet ;) så jeg nævner lige et par fra hver tabel så jeg kan forstå sammenhængen. Så skulle jeg gerne selv kunne tilrette det bagefter.
pc: maskintype, pcserienr
Printer: printserienr, printtype
Skærm: skærmserienr, skærmtype
Avatar billede arne_v Ekspert
15. maj 2003 - 00:27 #10
Jeg forudsætter at pcserienr, printserienr og skærmserienr har samme datatype
og maskintype, printtype og skærmtype har samme datatype.

(SELECT pcserienr,maskintype FROM pc WHERE adresse=[Hvor]) UNION
(SELECT printserienr,printtype FROM Printer WHERE adresse=[Hvor]) UNION
(SELECT skærmserienr,skærmtype FROM Skærm WHERE adresse=[Hvor])

burde så gerne prompt for hvor og finde alt i de 3 tabeller med den adresse.
Avatar billede casch Nybegynder
15. maj 2003 - 00:38 #11
den kommer med en fejl i select sætningen, den indeholder et reserveret ord eller argument, der er stavet forkert eller mangler, eller tegnsætningen er forkert.

Jeg synes jeg har tjekket igennem at der ikke er nogen stavefejl, men jeg er ved at være så træt så det kan godt være det er mig der har lavet en fejl. Jeg smutter i seng nu og prøver igen i morgen. Håber jeg kan fange dig der hvis det stadig ikke virker.

God nat ;)
Avatar billede arne_v Ekspert
15. maj 2003 - 08:04 #12
Gæt:

Der skal [] omkring felt og tabel navne der indeholder ÆØÅ.
Avatar billede arne_v Ekspert
15. maj 2003 - 08:04 #13
(SELECT pcserienr,maskintype FROM pc WHERE adresse=[Hvor]) UNION
(SELECT printserienr,printtype FROM Printer WHERE adresse=[Hvor]) UNION
(SELECT [skærmserienr],[skærmtype] FROM [Skærm] WHERE adresse=[Hvor])
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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