如何只取最大值?

时间:2019-06-18 11:28:04

标签: sql oracle

我有一个这样的sql请求:

SELECT * FROM table1
INNER JOIN table2 ON table1.id = table2.id
INNER JOIN table3 ON table1.id = table3.id
INNER JOIN table4 ON table1.id = table4.id

我有一个问题,我想只从table3接收最大值,例如,我收到:

ID    Value    
1     1
1     2
1     3
2     1
3     1
3     2

我只想获取最大值为的响应:

ID    Value
1     3
2     1
3     2

我隐藏了更多的列。 你知道如何实现吗?

谢谢

2 个答案:

答案 0 :(得分:2)

使用聚合:

bar(0);

答案 1 :(得分:0)

对表3使用子查询

SELECT t1.id, MAX(t3.value)
FROM table1 t1 JOIN
     table2 t2
     ON t1 = t2.id JOIN
     table3 t3
     ON t1.id = t3.id
     table4 t4
     ON t1.id = t4.id
GROUP BY t1.id;