执行下面的查询时,我在帖子标题中收到1111错误。基本上,我尝试使用表2(search_upload_quotes)中的数据更新表1(special_valuation_temp)。我想得到最小和最大报价值来更新表1。
UPDATE special_valuation_temp svt
INNER JOIN search_upload_quotes suq
ON ( svt.clei = suq.clei
OR svt.partnumber = suq.partnumber )
SET svt.vendor_low = ( Min(suq.priceperunit) * svt.qty ),
svt.vendor_high = ( Max(suq.priceperunit) * svt.qty )
WHERE suq.submitted = 1
AND suq.priceperunit > 0;
似乎我不能在SET子句中使用MIN()和MAX()函数。还有另一种方法吗?
答案 0 :(得分:0)
是的,如果不使用group by
,那就错了。您可以先在子查询中获取min()
和max()
值,然后使用该子查询结果执行join
并按原样进行计算。