Sql 在计数中合并记录
我有一个表,需要从中获得按字段分组的计数,如下所示:Sql 在计数中合并记录,sql,sql-server-2008,Sql,Sql Server 2008,我有一个表,需要从中获得按字段分组的计数,如下所示: SELECT COUNT(*), fld1 FROM tbl1 GROUP BY fld1 这很简单,但是fld1可能包含诸如“Exp.Brain Res.”、“Exp.Brain Res.”、“Exp.Brain Res.”、“Exp.Brain Res.”、“Exp.Brain Res.”等值。我需要将所有这些可能的值合并到一个计数中,并使用其中一个名称显示。因此,与其在结果集中 Exp Brain Res - 5 Exp. Bra
SELECT COUNT(*), fld1
FROM tbl1
GROUP BY fld1
这很简单,但是fld1可能包含诸如“Exp.Brain Res.”、“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中,有什么好方法可以做到这一点
谢谢你如果空格和句点是你想忽略的唯一标点符号,你可以使用:
SELECT MAX(fld1), -- select one of the group's values.
COUNT(*)
FROM tbl1
GROUP BY REPLACE(REPLACE(fld1, ' ', '' ), '.', '')
如果要忽略的标点符号只有空格和句点,则可以使用:
SELECT MAX(fld1), -- select one of the group's values.
COUNT(*)
FROM tbl1
GROUP BY REPLACE(REPLACE(fld1, ' ', '' ), '.', '')