【发布时间】:2021-01-22 04:47:41
【问题描述】:
我想获得 2 列 col_a 和 col_b 的值,分别表示其他列的最小值和最大值。例如:
| id | last_updated | col_a | col_b |
|---|---|---|---|
| 1 | 2021-01-01 | abc | xyz |
| 1 | 2021-01-02 | abc_0 | xyz_0 |
| 1 | 2021-01-03 | abc_1 | xyz_1 |
| 1 | 2021-01-04 | abc_2 | xyz_2 |
| 2 | 2021-01-01 | abc | xyz |
| 2 | 2021-01-01 | abc | xyz |
| ... |
我想得到结果:
|1|abc|abc_2|xyz|xyz_2|
这是按 id 分组的结果,并获取这些列的值,同时将 min 和 max 的条件放在其他列上(last_updated)。
我想出了以下查询:
select id, max(last_updated), min(last_updated)
from my_table
group by id
这给了我 id 和 min 和 max 日期,但不是其他 2 列。我不确定如何获取同一查询中两个日期的其他 2 列的值。
【问题讨论】:
标签: sql sql-server database tsql