/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
smorch 260
10  svend_dyhr 250
MIN() og MAX() ved LEFT og INNER JOIN
Fra : Morten Winther


Dato : 10-03-03 16:28

Hej

Jeg har lavet 2 queries der kun har join-typen til forskel. Hvorfor er det
ligesom at left join får mysql til at at tage højde for where-delen når min
og max udregnes? Som i kan se er der jo kun en række i hver recordset, så
min og max burde jo ikke kunne være forskellig.


SELECT count( plads_ordre.id )
as antal, MIN( forestilling.arrangement_id )
as min, MAX( forestilling.arrangement_id )
as max
FROM plads_ordre
INNER JOIN forestilling ON forestilling.id = plads_ordre.forestilling_id
WHERE plads_ordre.ordre_id = '25408'

Giver:
antal min max
1 18 18


SELECT count( plads_ordre.id )
as antal, MIN( forestilling.arrangement_id )
as min, MAX( forestilling.arrangement_id )
as max
FROM plads_ordre
LEFT JOIN forestilling ON forestilling.id = plads_ordre.forestilling_id
WHERE plads_ordre.ordre_id = '25408'

Giver:
antal min max
1 7 19

Nogen der kan give en god forklaring?


--
/ morten mw@mwi.dk

"There are only 10 types of people in the world: Those who understand
binary, and those who don't"



 
 
Søg
Reklame
Statistik
Spørgsmål : 177823
Tips : 31980
Nyheder : 719565
Indlæg : 6410997
Brugere : 218912

Månedens bedste
Årets bedste
Sidste års bedste