webForumDet fria alternativet
Logga in / Bli medlem

Left join och having clause

Databaser & SQL

1 svar · 205 visningar · startad av Jesper T

Medlem sedan nov. 20017 144 inlägg
Trådstart#1
SELECT a.province,a.city, 
   	 min(b.pricew) as lows, 
   	 max(b.pricew) as highs
    	FROM objekt AS a 
    	INNER JOIN pricecat as b ON a.id=b.shid 
    	INNER JOIN rates as c ON c.currencyF=b.currency
    	WHERE c.currencyT = @curr
    	GROUP BY a.id,a.province,a.city,c.rate,b.currency,currencyT
   	HAVING (min(b.pricew)*c.rate <= (SELECT @maxprice/rate FROM ratesnew WHERE currencyF=@curr AND currencyT = @curr))

Här får jag bara med poster om de finns representerade i tabellen "pricecat".

Jag skulle även vilja ha med posterna som inte finns med i "pricecat".
Har testat med LEFT JOIN men det fjunkar inte.
Tips?

Medlem sedan dec. 200012 464 inlägg
#2
SELECT a.province,a.city, 
   	 min(b.pricew) as lows, 
   	 max(b.pricew) as highs
    	FROM objekt AS a 
    	LEFT JOIN pricecat as b ON a.id = b.shid 
    	LEFT JOIN rates as c ON c.currencyF = b.currency
    	and c.currencyT = @curr
    	GROUP BY a.province,a.city,c.rate
   	HAVING min(b.pricew)*c.rate <= 
   (SELECT @maxprice/rate 
      FROM ratesnew 
     WHERE currencyF = @curr 
       AND currencyT = @curr) 
    or min(b.pricew) is null
257 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)