[英]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.