首页 文章

查找费率低于多个表的平均费率

提问于
浏览
0

我试图找到犯罪率低于每张 table 计算的平均犯罪率的地区 . 我本来应该为三个不同的表做这个,每个表都需要有自己独特的平均犯罪率 . 这就是我做到的,但我想知道是否有更好的方法?将此作为存储过程或函数写得更好(不知道我会怎么做)?怎么办呢?

T1,T2,T3分别是该示例的状态 . 我正在寻找三个不同州的地区,我想要每个州的平均犯罪率 . 然后我想要打印低于这些平均值的地区 . 我还想要确定结果来自哪个联合结果集 .

SELECT district, population
FROM T1
WHERE (crime/Population) < (SELECT AVG(crime/population) From T1) 
UNION ALL
SELECT district, population
FROM T2
WHERE (crime/Population) < (SELECT AVG(crime/population) From T2)
UNION ALL
SELECT district, population
FROM T3
WHERE AND (crime/Population) < (SELECT AVG(crime/population) From T3)

1 回答

  • 0

    解决方案简单你可以为每个表(T1,T2,T2)添加列到结果(犯罪/人口)并创建表格到结果AVG(犯罪/人口)

相关问题