【发布时间】:2020-01-03 03:26:21
【问题描述】:
我有以下要求,只是想知道是否有一种聪明的方法可以用最少的查询来获得它:
下面是我的两个表用户和分数,我想根据他们的薪水和平均分数将用户分成 4 组。
- 工资 > 工资中位数(根据以下数据为 400)和平均得分 > 得分中位数(这是常数:5)的用户。
[6. Rocky, 8.Vicky] - 有薪水的用户 > 薪水的中位数(根据下面的数据是 400)和平均分数 [5.Roy, 7.Antony]
- 用户的薪水 == 得分中位数(这是常数:5)
[1.Jack, 2.Tony, 4.Bony] - 工资=[3.Sham] 的用户
用户
Name user_id salary
Jack 1 100
Tony 2 200
Sham 3 300
Bony 4 400
Roy 5 500
Rocky 6 600
Antony 7 700
Vicky 8 800
分数
id score user_id
1 4 1
2 8 1
3 9 1
4 2 2
5 10 2
6 3 3
7 6 4
8 7 4
9 2 5
10 4 5
11 9 6
12 1 7
13 5 8
14 9 8
15 2 8
16 10 8
【问题讨论】:
标签: sql postgresql performance