1

我有一个表,我需要从中获取按字段分组的计数,如下所示:

SELECT COUNT(*), fld1
FROM tbl1
GROUP BY fld1

这很简单,但是 fld1 可能包含诸如“Exp Brain Res”、“Exp. Brain Res.”、“Exp. Brain Res.”、“Exp.Brain Res.”等值。我需要结合所有这些可能的值计数并显示其中一个名称。所以而不是在结果集中

Exp Brain Res   - 5
Exp. Brain Res. - 3
Exp. Brain Res. - 2
Exp.Brain Res.  - 4

我需要有

Exp Brain Res (or any of the above names) - 14.

在 SQL 2008 中执行此操作的好方法是什么?

谢谢

4

1 回答 1

1

如果空格和句点是您要忽略的唯一标点符号,则可以使用:

SELECT MAX(fld1), -- select one of the group's values.
       COUNT(*)
FROM tbl1 
GROUP BY REPLACE(REPLACE(fld1, ' ', '' ), '.', '')
于 2013-08-27T22:57:15.167 回答