sqlite3中的关键字计数

Posted

技术标签:

【中文标题】sqlite3中的关键字计数【英文标题】:Keyword count in sqlite3 【发布时间】:2021-03-21 04:24:17 【问题描述】:

我有一个包含两个表“person”和“person_keyword”的数据库。我想打印每个人的关键字数量。到目前为止我尝试过的是:

select person.name, keyword from person JOIN person_keyword ON person.name=person_keyword.keyword

但这只会给出:

name       keyword
-----      -----
JOHN       A
JOHN       AD
JOHN       V
SAM        DE
SAM        AS
EVA        AZ
EVA        AS
EVA        FQ
EVA        MQ

我的预期输出如下所示:

Name       keyword
-----      -----
JOHN       3
SAM        2
EVA        4

我应该如何解决这个问题?

【问题讨论】:

【参考方案1】:

你可以使用group by:

select p.name, count(*) as cnt 
from person p
inner join person_keyword ok on p.name = pk.keyword
group by p.name

注意:除非您真的想对 person 进行一些过滤,否则您可以直接从 person_keyword 获得该结果:

select keyword as name, count(*) as cnt
from person_keyword
group by keyword

【讨论】:

以上是关于sqlite3中的关键字计数的主要内容,如果未能解决你的问题,请参考以下文章

如何在目录中的所有 csvs 文件中进行 python 关键字搜索和单词计数器并写入单个 csv? [关闭]

Qt sqlite3.o: undefined reference to symbol ‘dlclose@@GLIBC_2.2.5‘

在 Angular + Electron 应用程序中使用 sqlite3:关键依赖项:依赖项的请求是一个表达式

意外的静态计数器变量行为

Windows平台安装SQLite3数据库

Linq 计数错误(列)