sql:
SELECT instock.rating
FROM instock
JOIN products
ON instock.code_id=products.code
WHERE products.brand="Adidas"
ORDER BY -instock.rating
LIMIT 5;
例如:返回:5.5.6.6.7
在Where、Order By和Limit之后,我需要SUM(I.rating(,返回5+5+6+7。
ORDER BY响应后包含大约200行。我的试用示例:1:
SELECT SUM(instock.rating)
FROM instock
JOIN products
ON instock.code_id=products.code
WHERE products.brand="Adidas"
ORDER BY -instock.rating
LIMIT 5;
返回,值:3000,所以,SUM所有查询。2:
SELECT SUM(DISTINCT instock.rating)
FROM instock
JOIN products
ON instock.code_id=products.code
WHERE products.brand="Adidas"
ORDER BY -instock.rating
LIMIT 5;
返回:5+6+7==19,所以,SUM单个i.
如何从第一个sql示例中获得值:5+5+6+7=29?
SELECT SUM(rate)
FROM (SELECT i.rating as rate
FROM instock_nagornaya AS i
JOIN products AS p
ON code_id=code
WHERE p.brand="Adidas"
ORDER BY -i.rating
LIMIT 5);
可能会更快解决吗?