webForumDet fria alternativet

Hur matchar jag tabellerna?

4 svar · 309 visningar · startad av inspiro

inspiroMedlem sedan sep. 2005673 inlägg
#1

Jag har två tabeller... en "finns" och en "sökes" med en massa fält i.

tabell "finns"
id sträng1 sträng2 strängX...

tabell "sökes"
id sträng1 sträng2 strängY...

Tabellerna ser nästan lika ut, men inte riktigt, och de innehåller en himla massa fält. Jag vill nu matcha "sökes" med "finns" och få fram de rader i "finns" som stämmer med en rad i "sökes". Tacksam för lite hjälp... :)

spangoMedlem sedan juni 20008 205 inlägg
#2

SELECT finns.*, sökes.* FROM finns LEFT JOIN sökes ON finns.sträng1 = finns.sträng2 etc borde funka.

inspiroMedlem sedan sep. 2005673 inlägg
#3

Vet inte om jag fattar riktigt. Alltså, jag vill ta en rad i tabellen "sökes" och få fram alla rader i tabellen "finns" som matchar. Tabellerna är inte identiska och de innehåller typ 30 olika fält och jag vill bara matcha mot de fält som innehåller ett värd. Så här försöker jag göra:

  1. Försöker välja en rad (vilken som helst) i tabellen "sökes".

  2. Sen jämför jag alla fält som innehåller något i den raden med varje rad i tabellen "finns".

  3. Slutligen plocka fram en lista med de rader som matchade (vill bara ha fälten från tabellen "finns" med i resultatet).

spangoMedlem sedan juni 20008 205 inlägg
#4

OK, testa med SELECT sökes.* FROM finns WHERE finns.id = <någonting> LEFT JOIN sökes ON finns.sträng1 = sökes.sträng1 AND finns.sträng2 = sökes.sträng2 och så vidare. Inser att det var ett ganska uppenbart fel i mitt förra inlägg... :)

inspiroMedlem sedan sep. 2005673 inlägg
#5

Toppen, det var precis det jag var ute efter. Tack! :)

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)