Avatar billede webmasterdk Praktikant
22. oktober 2010 - 20:59 Der er 5 kommentarer og
1 løsning

Sammenlign 2 MySQL tabeller og marker sammenfald.

Hejsa
Jeg har 2 tabeller, hvor jeg gerne vil have den til at sammenligne dem og printe ud hvilke der findes i begge.
Min struktur er:
tabel1(id, adgang)
tabel2(id, vist, username, a, b, c, d, e)
Jeg vil gerne have, at den via tabel2's a-e slår op i tabel1's adgang og fortæller hvilke der er hits på.
det kunne fx være a,b,d,e som var et hit.

Men det går desværre lidt over mit indtil videre ikke store MySQL ekspertise.

Please help :)
Avatar billede erikjacobsen Ekspert
22. oktober 2010 - 21:28 #1
"findes i begge" - hvad skal der være opfyldt for at findes i begge tabeller?
Avatar billede webmasterdk Praktikant
22. oktober 2010 - 21:46 #2
At tabel1.adgang = tabel2.a, b, c, d eller e
Avatar billede erikjacobsen Ekspert
22. oktober 2010 - 23:08 #3
select * from tabel2 where a in (select adgang from tabel1) or b in (select adgang from tabel1) or ...

Men det er nok ikke synderligt effektivt.
Avatar billede webmasterdk Praktikant
22. oktober 2010 - 23:17 #4
Hejsa.
Jeg fandt mig en alternativ løsning der gav et brugbart resultat.
Men tak for indsatsen.
Avatar billede showsource Seniormester
23. oktober 2010 - 07:37 #5
Det er en god skik her på exp.dk, at poste en løsning hvis den blev fundet andetsteds.
Avatar billede webmasterdk Praktikant
23. oktober 2010 - 09:36 #6
Showsource > Ja, det ved jeg.
Men løsningen blev ikke baseret på det oprindelige ønske i indlægget.
Derfor jeg skrev alternativ. :)
Men for en god ordensskyld kan jeg da godt lægge den ud :)

$sql = "select * from tabel2 where username=$user";
$result = mysql_query($sql);
while($row = $mysql_fetch_row($result)){
$sql2 = "select adgang from tabel1 where adgang in($row[3],$row[4],$row[5],$row[6],$row[7]) order by adgang asc";
$result2 = mysql_query($sql2);
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

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