有一些这样的数据:
name number
12_PAGE19901_CHN.DISPLAY_NT n.115
12_PAGE19901_CHN.DISPLAY_NT n.114
KAITEST123.DISPLAY_NT n.110
KAITEST123.DISPLAY_NT n.109
KAITEST123.DISPLAY_NT n.108
KAITEST123.DISPLAY_NT n.107
KAITEST33333.DISPLAY_NT n.105
我想要检索一些这样的数据:
name number
12_PAGE19901_CHN.DISPLAY_NT n.115
KAITEST123.DISPLAY_NT n.110
KAITEST33333.DISPLAY_NT n.105
我需要每个特定名称的first
数字值,这可能吗?
答案 0 :(得分:8)
您似乎只需要number
的每个特定name
的最大值。
SELECT
name,
MAX(number) AS number
FROM
yourTable
GROUP BY
name
请注意,number
是字母数字字段; n.09
比n.011
“更高”。为了使这更加数字一致,您需要n.009
而不是n.09
。
(由于我不知道您的号码字段的行为,这只是一般性说明,与您的示例数据无关。)
答案 1 :(得分:1)
如果您希望number
的最大值和name
分组,请尝试此操作。
select name, max(number) as number
from TABLE
group by name
答案 2 :(得分:0)
SELECT name,
'n.' + Cast(Max(Cast(Substring([number], 3, Len([number]) - 2) AS INT))
AS
VARCHAR(10))
FROM table
GROUP BY name