簡體   English   中英

基於列值在 T-SQL 中將某些行組合在一起

[英]Group Certain Rows Together in T-SQL Based on Column Value

我有以下查詢:

select MT.* 
from MyTable MT 
where 0 = 0  
order by ChangeDate, Type, ItemNumber

它返回以下內容:

TableID    ChangeDate    Description    ItemNumber    Type
-------    ----------    -----------    ----------    ----
11259      2019-05-20    Item1          1335          MOVE
11260      2019-05-20    Item2          1475          MOVE
11261      2019-05-20    Item3          1782          UPDATE
11262      2019-05-20    Item4          1789          UPDATE
11263      2019-05-20    Item5          1782          MOVE

我正在嘗試將具有相同 ItemNumber 的行(例如:1782)組合在一起,並且在嘗試使用 GROUP BY 子句來實現這一點時遇到了困難,因為我不知道如何操作關聯的聚合方法來實現這一點。 任何人?

更新

更具體地說,我希望具有相同 ItemNumber 的行彼此相鄰,如下所示:

TableID    ChangeDate    Description    ItemNumber    Type
-------    ----------    -----------    ----------    ----
11259      2019-05-20    Item1          1335          MOVE
11260      2019-05-20    Item2          1475          MOVE
11261      2019-05-20    Item3          1782          UPDATE
11263      2019-05-20    Item5          1782          MOVE
11262      2019-05-20    Item4          1789          UPDATE

看起來您只是想要一個不同的ORDER BY子句 - 我看不出這與聚合( GROUP BY )有何關系。 看起來應該是:

order by ChangeDate, ItemNumber, TableID

或者,可能:

order by ItemNumber, ChangeDate, Type

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM