比方说,我有如下表:聚合函数(GUID)
category | guid
---------+-----------------------
A | 5BC2...
A | 6A1C...
B | 92A2...
基本上,我想要做的SQL语句:
SELECT category, MIN(guid)
FROM myTable
GROUP BY category
它并不一定是MIN。我只想返回一个每个类别的GUID。我不在乎哪一个。不幸的是,SQL Server在GUID上不允许MIN或MAX。
当然,我可以将guid转换成varchar,或创建一些嵌套的TOP 1 SQL,但这看起来像一个丑陋的解决方法。有没有我错过的优雅解决方案?
你为什么要这么做?你可以直接使用'SELECT DISTINCT类别FROM myTable'吗?或者你真的需要每个类别的任意GUID? – verdesmarald 2011-05-20 08:38:24
@veredesmarald:是的,我需要为每个类别使用一个任意的GUID。 – Heinzi 2011-05-20 08:41:19