Left join större än ursprungstabellen

Databaser & SQL

2 svar · 198 visningar · startad av Janspeed

Medlem sedan jan. 2001510 inlägg
Trådstart#1

Har blivit lite konfunderad när det gäller join.

Jag har två tabeller varav den ena innehåller postnr och ort (Orter) och den andra innehåller ort och den mailadress som hör till orten (concat).

När jag räknar Orter-tabellen så får jag ca: 15700 poster men när jag gör en left join med concat-tabellen så ger den c:a 16000 poster. Varifrån kommer de extra posterna?

Jag trodde Left join bara skulle koppla ihop concat posterna med Orterposterna. Inte skapa egna poster i resultatet?

SQL-satserna jag använt
--------------------------------

SELECT COUNT(*) AS ANTAL
FROM Orter

SELECT     COUNT(*) AS Antal
FROM         Orter LEFT OUTER JOIN
                      concat ON Orter.Postort = concat.Col001

Tacksam för hjälp.

//JANspeed

Medlem sedan dec. 200012 464 inlägg
#2

Det finns orter i concat-tabellen som har flera adresser.

Medlem sedan jan. 2001510 inlägg
#3

Aha... så om concat innehåller dubbla adresser så skapar den en för varje? Eller är det om concat innehåller både dubbla orter och mailadresser?

Ska prova att lägga in en distinct i concat i alla fall.

/JANspeed

254 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)