我试图编写一个能够提供最常存储消息的SQL查询。例如,有一个数据库在特定主题上存储多个消息。并非所有用户都存储相同的消息。
id | name | comment
-------------------------------
1 | John | catching
2 | Bill | assistance with catching
上面的示例显示了我想要区分的表格。那两个是同一类型的捕获。需要一个SQL查询,知道这是相同的,只会显示一次
答案 0 :(得分:0)
如果您可以指定要匹配的关键字列表,则可以执行以下操作:
declare @keywords table
(
word varchar(100)
)
insert into @keywords values ('catching')
insert into @keywords values ('unicorns')
select kw.word, count(*) as NumMessages
from your_table t
inner join @keywords kw on t.comment like '%' + kw.word + '%'
group by kw.word
order by NumMessages
请注意,如果评论包含多个关键字,则会在两个关键字的计数中显示。