簡體   English   中英

僅按一列分組

[英]Group by only one column

我有這樣的查詢:

SELECT
             [D].[Name]  AS [Display]
            , [D].[DesignKey] AS [Value]
             FROM [Design] AS [D]
                 INNER JOIN [DesignGroup] AS [DG] ON [D].[DesignGroupId] = [DG].[DesignGroupId]
                 INNER JOIN [DesignType] AS [DT] ON [DT].[DesignTypeGuid] = [D].[DesignTypeGuid]
             WHERE [DG].[ProjectKey] = 4202
                  AND [D].[IsDeleted] = 0
                  AND [D].[Name] != 'CACHE REESED SEQUENCE'
             GROUP BY
                    [D].[Name], [D].[DesignKey]

它返回的數據為:

+-------------------------------------------+------+
|                  Design                   |  |
+-------------------------------------------+------+
| Design                                    | 5279 |
| Design                                    | 5280 |
| new design test                           | 5287 |
| another design                            | 5288 |
| NO CACHE FOLIO SEQUENCE                   | 5289 |
| RESEED                                    | 5291 |
| RESEED 2                                  | 5292 |
| RESEED 2                                  | 5306 |
| RESEED 2                                  | 5307 |
| RESEED 2                                  | 5308 |
| RESEED 2                                  | 5309 |
| test copy customers from  design RESEED 2 | 5310 |
+-------------------------------------------+------+

我想知道如何將結果分組為1 [D]。[名稱]我的意思是獲取每個名稱的第一個DesignKey並得到如下結果:

+-------------------------------------------+------+
|                  Design                   | 4684 |
+-------------------------------------------+------+
| new design test                           | 5287 |
| another design                            | 5288 |
| NO CACHE FOLIO SEQUENCE                   | 5289 |
| RESEED                                    | 5291 |
| RESEED 2                                  | 5292 |
| test copy customers from  design RESEED 2 | 5310 |
+-------------------------------------------+------+

我該如何實現?

您似乎想要聚合:

SELECT D.Name as Display, MIN(D.DesignKey) as value
FROM Design D JOIN
     DesignGroup DG
     ON D.[DesignGroupId] = DG.[DesignGroupId] JOIN
     DesignType DT
     ON DT.[DesignTypeGuid] = D.[DesignTypeGuid]
WHERE [DG].[ProjectKey] = 4202 AND
      [D].[IsDeleted] = 0 AND
      [D].[Name] <> 'CACHE REESED SEQUENCE'
GROUP BY D.Name;

暫無
暫無

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

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