webForumDet fria alternativet

söka igenom flera olika tabeller (sql)

PHP

2 svar · 366 visningar · startad av Thistel

Medlem sedan aug. 200470 inlägg
Frågan#1

Jag har i databasen 6 tabeller. 4 av dem har ingen relation med varandra men de övriga två har relation till de 4. De 4 är olika produkter vilka används på olika håll. Jag vil nu kunna söka igenom de 4 tabellerna efter ett typnummer och sedan visa informationen. Hur gör man det? Söka igenom en tabel är inga problem men när jag lägger till nästa tabel blir allt fel.

Tabell 1 -4 ser ut såhär:
id
typnr
typid
färgkod
teknik

Tabell 5 såhär:
typid
användning

Tabell 6:
färgkod
färg

Tabell 1-4 hänger ihop med 5 och 6 med typid och färgkod.
Alltså jag vill söka på typid och få fram färg, användning, teknik och typnr.

Medlem sedan juni 20034 013 inlägg
#2

Kan samma typid ha flera färgkoder, flera tekniker, flera användningar och flera typnummer? Är det bara en av varje borde du nog lägga det i samma tabell. I stället bör du ge varje teknik och användning ett eget id och varsina tabeller...

Men i ditt nuvarande fall så joinar du:

SELECT farg, anvandning, teknik, typnr FROM tabell1 LEFT JOIN tabell5 ON (tabell1.typid = tabell5.typid) LEFT JOIN tabell6 ON (tabell1.fargkod = tabell6.fargkod) WHERE tabell1.typid = 'typid';

Medlem sedan aug. 200470 inlägg
#3

Skall inte sitta så sent och skriva frågor..blev lite fel ju. Det är typnr som jag skall söka på och sedan få fram resten av uppgifterna tillhörande det typnr. Gissar dock att jag ändå får slå samman tabellerna 1-4 för att det skall fungera utan för många JOINs?

281 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
154 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)