我有一个类似于MAC地址的字段,第一部分是组ID,第二部分是序列号。我的字段是字母数字,长度为5位,前3位是组ID。
我需要一个按字典顺序给出所有不同的组ID和第一个序列号的查询。以下是示例数据:
ID
-----
X4MCC
X4MEE
X4MFF
V21DD
8Z6BB
8Z6FF所需输出:
ID
-----
X4MCC
V21DD
8Z6BB我知道我可以做SELECT DISTINCT SUBSTRING(ID, 1, 3),但我不知道如何按字典顺序获得第一个单词。
发布于 2011-11-21 00:21:50
SELECT
ID
FROM
(
SELECT
ID,
ROW_NUMBER() OVER (PARTITION BY SUBSTRING(ID, 1, 3) ORDER BY ID) AS rn
FROM MyTable
) oops
WHERE
rn = 1发布于 2011-11-21 00:33:22
另一种方法似乎与gbn的查询具有相同的成本
SELECT MIN(id)
FROM your_table
GROUP BY SUBSTRING(id, 1, 3);https://stackoverflow.com/questions/8202861
复制相似问题