在另一个字段中的一个表字段中搜索字符串的出现次数

时间:2013-07-19 20:21:22

标签: sql

假设我想找到一个表中列出的名字。例如,我有这张表:

ID  |  Name
----+-----------------------
1   |  PersonA
2   |  PersonB
3   |  PersonC
4   |  PersonD

现在,我想在另一个表格中搜索这些人的姓名,并为每个人生成一个计数。这是我尝试过的,无济于事:

select 
  Name, 
  sum(
        select
          count(*)
        from Posts
        where Posts.Body like '%[^N]' + [Name] + '%'
  ) as [Count]
from NamesTable
order by Name;

我在SE上使用Data Explorer,所以无论什么语法都可以,我需要的是。我不确定如何使这个工作,或者这甚至是最好的方法。

1 个答案:

答案 0 :(得分:1)

您的查询非常接近。您只需要外部查询中的sum()

select Name, 
       (select count(*)
        from Posts
        where Posts.Body like '%[^N]' + [Name] + '%'
       ) as [Count]
from NamesTable
order by Name;