【发布时间】:2013-12-23 10:25:05
【问题描述】:
我正在尝试使用 percetaje 平均值进行选择。这些是我的桌子:
tb_module
ID_MOD MODULE ID_PR
1 Module 1 1
2 Module 2 1
3 Module 3 2
tb_activity
ID_ACT ID_MOD ACTIVITY
1 1 Activity 1.1
2 1 Activity 1.2
3 2 Activity 2.1
4 2 Activity 2.2
tb_percentaje
ID_PERC ID_ACT PERCENTAJE
1 1 20
2 2 10
3 3 70
4 4 50
我的一个QUERYS 是这样的----> WHERE ID_PRO = 1(当模块有活动时):
ID_MOD MODULE AVG(PERCENTAJE)
1 Module 1 15
2 Module 2 60
但是,当模块没有活动时 ------> WHERE ID_PRO = 2。查询返回 0 行。
我该如何解决这个问题?
应该是这样的,WHERE ID_PRO = 2
ID_MOD MODULE AVG(PERCENTAJE)
3 Module 3 0
'0' 因为没有活动。
【问题讨论】:
-
您打算如何区分没有活动的模块和平均百分比为 0 的活动的模块?无论如何,您可能想要使用 outer 连接。见A Visual Explanation of SQL Joins。
-
抱歉,我编辑了问题。
标签: mysql select group-by average