webForumDet fria alternativet

Problem med dubbla JOIN i Access

Databaser & SQL

1 svar · 350 visningar · startad av Fireh

Medlem sedan jan. 2003173 inlägg
Frågan#1

Hej.

Jag försöker få ihop en fråga som kombinerar tre olika tabeller. Om jag kör frågor som kombinerar två av tabellerna i taget går det bra, men när jag sätter ihop två fungerande så skiter det sig.

De första två fungerar, den tredje gör det inte:

SET rs=db.Execute("SELECT * FROM o1 INNER JOIN o2 ON CStr(o1.Ordernr)=o2.Ordernr")

SET rs=db.Execute("SELECT * FROM o1 INNER JOIN k1 ON o1.KundID=k1.KundID")

SET rs=db.Execute("SELECT * FROM o1 INNER JOIN o2 ON CStr(o1.Ordernr)=o2.Ordernr INNER JOIN k1 ON o1.KundID=k1.KundID")

Jag har testat ändra till LEFT istället för INNER i alla kombinationer för att se om det gjort någon skillnad, men icke. Tabellerna o1, o2 och k1 innehåller bara en post var som har den information som krävs. Fältet Ordernr i tabellen o2 är textvärde med samma innehåll som Ordernr i tabell o1, därav CStr i frågan.

Någon som kan bringa klarhet i detta?

Medlem sedan jan. 2003173 inlägg
#2

Har testat följande fråga också, den fungerar men returnerar 2 likadana poster. Group by fungerar inte.

SET rs=db.Execute("SELECT * FROM o1,o2,k1 WHERE CStr(o1.Ordernr)=o2.Ordernr AND o1.KundID=k1.KundID")
254 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)