0

下面的代码正在为我创建一个如下表:

SELECT reviews.style_id, AVG("col1"), AVG("col2")
  FROM reviews, audios
 WHERE reviews.consumer_id = audios.consumer_id
 GROUP BY style_id

在此处输入图像描述

所以我的问题是我想平均col1and col2,而不用担心 NULL 值,因为它们不会存在于我的表中。但是,我确实需要维护连接的逻辑。谢谢!

4

2 回答 2

1

这是你想要的吗?

SELECT reviews.style_id,
       (AVG("col1") + AVG("col2")) / 2.0
FROM reviews, audios
WHERE reviews.consumer_id = audios.consumer_id
GROUP BY style_id
于 2012-05-17T10:58:57.810 回答
0

作为已接受答案的替代方案,并基于 OP 在评论中的澄清:

SELECT reviews.style_id, 
       Avg((col1+col2)*0.5) 
FROM   reviews 
       INNER JOIN audios 
         ON reviews.consumer_id = audios.consumer_id 
GROUP  BY reviews.style_id 

这种逐行平均值的平均col1col2将给出相同的结果。

于 2012-05-17T09:54:26.077 回答