0

私が持っているテーブル構造が次のようになるという要件があります

ID                 Owner Id                NAME  
1                  20                      Name 1  
1                  21                      Name 2  
1                  34                      Name 3  
2                  10                      Name 4  
2                  12                      Name 5  
3                  100                     Name 6  

結果を次のように返すクエリが必要です

ID                Owner ID                Name  
1                  20                     Name 1, Name2, Name 3  
2                  10                     Name4, Name5  
3                  100                    Name 6  

現在、コードビハインドでこれを行っていますが、理想的には SQL を介してこれを行い、それがパフォーマンスの向上につながるかどうかを確認したいと考えています。

4

1 に答える 1

1

DBMSについて言及していないので、PostgreSQLを想定しています:

SELECT id, 
       min(owner_id) as lowest_id,
       string_agg(name, ', ') as name_list
FROM the_table
GROUP BY id
于 2012-04-04T17:44:45.043 に答える