Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 在计数中合并记录_Sql_Sql Server 2008 - Fatal编程技术网

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, ' ', '' ), '.', '')