06. februar 2008 - 20:14Der er
7 kommentarer og 1 løsning
Hjælp til SELECT udtræk fra tabel
Goddag eksperter
Jeg har et problem og håber nogen vil hjælpe med:
Tabel1: a (string)
Tabel2: a (string) b (string)
Jeg har så værdier i tabel1 som også er i tabel2, og til det skal jeg bruge en select sætning til at hive de værdier ud fra tabel2 hvor variabel "a", er lig med det som er i "a" i tabel1.
Der er ingen fremmednøgler eller lign.
Håber nogen kan hjælpe med en select sætning på hvordan kan se ud?
tak for svaret, kan du beskrive det lidt mere detaljeret for en person der ikke før har rodet med inner joins?
Hvis man nu skal hente alle rækker fra tabel2 ud fra de samme ting som står i tabel1.a og tabel2.a, således hvis der en sted står abc i tabel1.a og der er flere rækker hvor abc er tabel2.a, kommer alle de rækker så ud? Eller skal den således ændres, jeg forstår ikke helt det der "a" tilsidst?
Der kommer kun de rækker ud, hvor der står a i BÅDE Tabel1 og Tabel2 som du jo selv beder om her:
"variabel "a", er lig med det som er i "a" i tabel1"
"a" er således dit kriterie.
Forskellen på Outer og Inner Joins er groft sagt, at Outer Joins er lavet i relationsvinduet og gælder overalt i db. Inner Joins er lavet i hver enkelt forespørgsel og fungerer kun i denne ene forespøgsel. Du kan blot kopiere min kode, ændre tabelnavne / feltnavne og åbn en ny forespørgsel > Luk vinduet med tabelvalg > Vis > SQL.visning og kopier koden ind her.
Det der bare vigtigt for mig er at det også er muligt at slette alle records der kommer i SELECT. Men også det faktum at jeg aldrig ved hvilken værdi der står i felt a i tabellerne, men ved som sagt ikke om det behøver ændres, at der evt. skulle stå "Tabel2.felt1" i stedet for "a" tilsidst så.
Der er ikke noget felt der hedder felt a. Felterne hedder:
Tabel1.felt1, Tabel2.felt1
og du selecter felt1 fra Tabel1 og felt1 fra Tabel2. Indholdet (feltets string) kan være a eller en hvilken som helst anden string.
Stringen a er som sagt indholdet i felt1 og er dit kriterie der begrænser udtrækket fra tabellerne til de poster der indeholder a. Altså udvælg de poster fra Tabel1.felt1 der hvor indholdet i felterne er string:
Oki, har testet og det giver det korrekt udtræk, men jeg får da et andet problem, nemlig at de rækker der kommer ud ikke kan slettes, den siger noget med data read-only. Men det mærkelige er at hvis jeg markere kolonnen og trykker på "Sort (A->Z)" så kan jeg godt slette dem på trods af at de inden det tryk er sorteret.
Hvorledes kan jeg så få lov at slette records uden at skulle trykke på den der sort knap, således dataen i første hug kan slettes?
Har brugt følgende select sætning:
SELECT Tabel1.felt1, Tabel1.felt2 FROM Tabel1 INNER JOIN Tabel2 ON Tabel1.felt1 = Tabel2.felt1
Tak for point. Jeg mindes aldrig at have oplevet det du beskriver med sortering, og jeg har ingen bud på løsningen. Enter er data read only eller også kan du rette / slette dem
"Enter er data read only eller også kan du rette / slette dem" ... med mindre, der ikke er sat nøgle på de to "felt1" felter. Så kan Access godt blive lidt forvirret i.f.m. sletning.
Synes godt om
Ny brugerNybegynder
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.