Avatar billede heyn Nybegynder
19. september 2005 - 16:26 Der er 4 kommentarer og
1 løsning

MySQL query's med 2 tabeller hvor kolonner har ens navne

Mit problem er følgende:
Jeg har 2 tabeller tabel1 og tabel2 i MySQL.
Ved id = 5 er tabel1.name = Søren
Ved id = 5 er tabel2.name = Per
Jeg laver: $query = "SELECT tabel1.name, tabe2.name from tabel1, tabel2 where tabel1.id = tabel1.id";
Statementet fungerer ok i MySQL.
I php skriver jeg:
$result = MySQL_query($query); (det lykkes)
$row = MySQL_Fetch_Array($result); (det lykkes)
$tabel1_name = $row['tabel1.name']; (det lykkes IKKE)
$tabel2_name = $row['tabel2.name']; (det lykkes IKKE)

Hvordan skiller jeg de 2 kolonner med samme navn ad?

Mvh Christian
Avatar billede jakobdo Ekspert
19. september 2005 - 16:33 #1
SELECT tabel1.name AS name1, tabel2.name AS name2 from tabel1, tabel2 where tabel1.id = tabel2.id
Avatar billede jakobdo Ekspert
19. september 2005 - 16:34 #2
$tabel1_name = $row['name1'];
$tabel2_name = $row['name2'];
Avatar billede heyn Nybegynder
19. september 2005 - 18:09 #3
Mange tak for det hurtige svar Jakobdo.
Selvfølgelig... Jeg havde glemt AS.
Må jeg stille et lille tillægsspørgsmål?
Faktisk er tabel1 og tabel2 rimeligt store. Da jeg skrev select tabel1.*,tabel2.* from tabel1,tabel2 fik jeg (antal poster i tabel1 = 400)*(antal poster i tabel2 = 120) 48000 svar (Altså antallet af kombinationer mellem posterne i de 2 tabeller).
Er det således at enhver søgning altid vil gennemsøge hele denne tabel når jeg søger, eller vil f.eks. 'while tabel1.id = tabel2.id' formindske størrelsen af den tabel der søges i til.
Hvordan hvis det er 'while tabel1.foreign_key = tabel2.id'.

Mvh Christian

P.s. Under alle omstændigheder må du hellere sende mig et svar.
Avatar billede jakobdo Ekspert
19. september 2005 - 19:04 #4
Altså den søger jo begge tabeller igennem, da den jo skal finde dem som matcher!
Hvis dine tabeller er store, kan du jo evt overveje at lave index på navne feltet, så vil søgninger gå hurtigere.
Og et svar!
Avatar billede jakobdo Ekspert
19. september 2005 - 19:22 #5
Takker for point!
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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