查询类别/事务的唯一值

时间:2017-09-29 10:20:48

标签: sql grouping hana having distinct-values

我想查询包含每个事务中不同的articleID的数据的数据库表:

TransactionID   TransactPos   ArticleID      
1               1             Article A
1               2             Article B
2               1             Article A
2               2             Article B
3               1             Article A
3               2             Article C
3               3             Article D 
3               4             Article E      <---
3               5             Article E      <---
3               6             Article E      <---
3               7             Article F      
4               1             Article A      <---
4               2             Article A      <---
4               3             Article C

我想要的结果只是每个交易的不同值

因此,期望的结果将如下所示:

TransactionID   TransactPos   ArticleID    
1               1             Article A
1               2             Article B
2               1             Article A
2               2             Article B
3               1             Article A
3               2             Article C
3               3             Article D 
3            4/5/6            Article E      <--- Distinct value for Transaction 3
3               7             Article F      
4              1/2            Article A      <--- Distinct value for Transaction 4
4               3             Article C

有人有想法吗?我尝试过不同的分组,但到目前为止我没有运气。

1 个答案:

答案 0 :(得分:2)

鉴于数据与这3列不同,如果你想获得你提到的输出。尝试以下查询以获得相同的

  select TransactionID , string_agg(TransactPos, '/') as TransactPos,   ArticleID   from yourtable 
    group by TransactionID,ArticleID