如何获取 SQL 中对象的所有版本和最新迭代
how to get all version and latest iteration of object in the SQL
我对 SQL 很陌生...
我在 table 中有如下数据,名为 versioniteration
。我想在 SQL (oracle) 中构建一个查询以获取第二个 table 中的结果。请指导我如何操作?
这里的部分在给定的版本中被修改了很多次,每次修改都会增加迭代次数。
零件也可以更改为新版本,然后将分配迭代(编号)。
| 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 |
|:------------------------------------------:|
如何说戈登·利诺夫是基本的group by
查询。您应该了解如何分组并添加其他功能以进行查询。比如你的任务是group by
+MAX
。也看看这个question.
您的查询:
SELECT name
, version
, MAX(iteration)
FROM table1
GROUP BY name, version
我对 SQL 很陌生...
我在 table 中有如下数据,名为 versioniteration
。我想在 SQL (oracle) 中构建一个查询以获取第二个 table 中的结果。请指导我如何操作?
这里的部分在给定的版本中被修改了很多次,每次修改都会增加迭代次数。
零件也可以更改为新版本,然后将分配迭代(编号)。
| 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 |
|:------------------------------------------:|
如何说戈登·利诺夫是基本的group by
查询。您应该了解如何分组并添加其他功能以进行查询。比如你的任务是group by
+MAX
。也看看这个question.
您的查询:
SELECT name
, version
, MAX(iteration)
FROM table1
GROUP BY name, version