Hej!
Sitter och pular lite med en databas i access, och behöver hjälp med att skriva ett SQL-kommando...
Problemet ser ut ungefär såhär
Tabell 1
ID1....... namn
1 .......... Pekka
2 .......... Nils
3 .......... Olle
Tabell 2
ID2....... specifikation
1 .......... 3
2 .......... 1
3 .......... 2
Vad jag vill göra är att värdet i "specifikation" i tabell 2 automatiskt skall få textsträngen från "namn" i tabell 1 returnerad till sig, och då alltså att själva värdet på specifikation skall avgöra vilket namn som returneras.
Exempel: talet "1" i kolumnen specifikation (på rad 2) skall sättas till "Nils" och om jag ändrar värdet till 3 istället kommer det automatiskt bli Olle, etc.
Om jag har antagit rätt skall man gå in på designview i access och skriva SQL-formeln, men var? Och hur?
Hoppas nån kan hjälpa mig..
LaspMedlem sedan juli 200012 980 inlägg Gör en fråga i Access Koppla fältnamnen direkt, genom att dra och släppa.
Gå sedan över i SQL mode Det gör du under Designknappen.. tredje alternativet.
LaspMedlem sedan juli 200012 980 inlägg Vid närmare eftertanke känns det inte rätt att ha tabellerna såsom du har beskrivit det.
Kom gärna med ett flödigare exempel på vad du vill åstadkomma, och mycket välkommen till wF skall du vara.
Hej och tack för svaret!
Hänger inte riktigt med när du säger "gör en fråga koppla fältnamnen direkt", är något av en novis i access men har ändå viss förståelse för sql-kommandon etc..
Hm... hur ska jag förklara det bättre. Tänk dig att i mitt exempel så är tabell 1 en slags kodning för tabell två. Jag vill kunna ha siffror i tabell två som automatiskt översätts till namnen i tabell ett enligt dess "nycklar". "specifikation", "id1", "id2", "namn" är kolumnnamn. Klarare? Varför kändes det inte rätt?
Det är iaf på detta sättet som det är tänkt att fungera, har inte riktigt lust och det är heller inte riktigt menat att jag ska ändra på hur databasen är utformad (om inte absolut tvunget)
LaspMedlem sedan juli 200012 980 inlägg SELECT Tabell1.Namn, Tabell2.Specifikation
FROM Tabell2 INNER JOIN Tabell1 ON Tabell2.Specifikation = Tabell1.Id1;
Intressant! Men ska det verkligen skrivas i designview för tabell 2 under "uppslag"(lookup) för "specifikation"-kolumnen?
Jag testade skriva det där i Radkälla-fältet och har "typ av radkälla" till tabell/fråga och "visa kontroll" till listruta.
Iaf när jag gör så, så funkar det inte som jag avsedde, jag får bara någon slags rulllister som innehåller textvärdena från "namn" i tabell 1...
vad gör jag fel? (kanske ganska mycket=))
Edit: testade även att lägga det som en query helt enkelt, men det enda som jag får då är en tabell där jag kan se specifikations-värdena och deras motsvarande namn... Hur får jag så att namnen hamnar istället för siffrorna i specifikations-kolumnen? Jag vill alltså att det i princip skall vara nummer i den kolumnen, representerade av namn.
LaspMedlem sedan juli 200012 980 inlägg Jag är ledsen. :(
Jag förstår nog inte den meningen med nummer som representeras av namn.
emissionMedlem sedan dec. 19996 721 inlägg
apanabel skrev:
Edit: testade även att lägga det som en query helt enkelt,
Ja, det är det du ska göra. Det var ju en SQL-fråga du vill ha :)
apanabel skrev:
men det enda som jag får då är en tabell där jag kan se specifikations-värdena och deras motsvarande namn... Hur får jag så att namnen hamnar istället för siffrorna i specifikations-kolumnen? Jag vill alltså att det i princip skall vara nummer i den kolumnen, representerade av namn.
Men har du inte fått ut det du vill ha?
Nej, det har jag inte...
Meningen med nummer representerade av namn är ju helt enkelt att man slipper kolla upp vad en 1a respektive 2a, 3a etc motsvarar hela tiden...
Tror inte riktigt vi förstår varandra emission, vad jag fick ut var att man kunde se namn-strängarna i rull-listor som finns i varje cell i specifikations-kolumnen. Siffrorna byts alltså inte ut mot namnen utan står där fortfarande. Jag vill att det bara ska stå namn i specifikationskolumnen.