SELECT shop.price,shop.item,shop.full_item_name,shop.qty,shop.shop_id,
SUM(averages_20128.combined_prices + averages_20127.combined_prices) AS combined,
SUM(averages_20128.total_sales + averages_20127.total_sales) AS total
FROM `shop`
JOIN `averages_20128`
ON averages_20128.full_item_name=shop.full_item_name
JOIN `averages_20127`
ON averages_20128.full_item_name=averages_20127.full_item_name
JOIN `theShops`
ON theShops.id=shop.shop_id
WHERE shop.price<combined/total
AND theShops.open='1'
AND shop.id!=''
AND `total`>10
ORDER BY combined/total DESC
LIMIT 100
错误:在未知列'合并“where子句”结合SUM和WHERE - 没有得到我期望的结果
概述:我已经考虑创建存储当前平均列和排序上但是,我刚开始时并没有这样做,现在已经有了数据。我宁愿不经过这一切并重新计算这一点。所以我希望MySQL能为我做数学。
当我遗漏了WHERE/ORDER子句时,这会起作用,导致我相信我的语法有问题。
你先生,是个绅士和学者,今天想到了我很多!谢谢! – 2012-02-22 19:44:43
我将阐明我将ORDER BY更改为:ORDER BY shop.price-(combined/total)ASC ...因此,基本上它试图将商品销售低于平均水平的商店,然后再订购最高的节省。 – 2012-02-22 20:07:23