我对SQL很新......
我在名为versioniteration
的表格中有如下数据。我想在SQL(oracle)中构建一个查询来获取第二个表中的out。请指导我如何做到这一点?
这里,在给定版本中,部件会多次更改,每次更改都会使迭代次数增加。
该部件也可以更改为新版本,然后将分配迭代次数(编号)。
| Name | Version | Iteration |
|===============|===============|============|
| Part 1 | A | 1 |
|:------------------------------------------:|
| Part 1 | A | 2 |
|:------------------------------------------:|
| Part 1 | A | 3 |
|:------------------------------------------:|
| Part 1 | B | 0 |
|:------------------------------------------:|
| Part 1 | B | 1 |
|:------------------------------------------:|
| Part 1 | B | 2 |
|:------------------------------------------:|
| Part 2 | D | 1 |
|:------------------------------------------:|
| Part 2 | D | 2 |
|:------------------------------------------:|
| Part 2 | D | 3 |
|:------------------------------------------:|
| Part 2 | C | 0 |
|:------------------------------------------:|
| Part 2 | C | 1 |
|:------------------------------------------:|
| Part 2 | C | 2 |
|:------------------------------------------:|
出局应该是:
| Name | Version | Iteration |
|===============|===============|============|
| Part 1 | A | 3 |
|:------------------------------------------:|
| Part 1 | B | 2 |
|:------------------------------------------:|
| Part 2 | C | 2 |
|:------------------------------------------:|
| Part 2 | D | 3 |
|:------------------------------------------:|
答案 0 :(得分:1)
如何说Gordon Linoff是基本的group by
查询。您应该了解工作组的方式并添加其他功能以进行查询。例如,您的任务是group by
+ MAX
。另请查看此question。
您的查询:
SELECT name
, version
, MAX(iteration)
FROM table1
GROUP BY name, version