mysql - SQL查询以制作列表等

标签 mysql sql sql-server postgresql select

下面是插入了数据的表格。

CREATE TABLE police(event_id VARCHAR(100), search_type VARCHAR(1000),
                    reported_by VARCHAR(100));
INSERT INTO police VALUES ('gng67g6yf', 'person','ceridigion' );
INSERT INTO police VALUES ('bfewbqfjhfb', 'person', 'ceridigion' );
INSERT INTO police VALUES ('ytftdfctg', 'n/a','ceridigion'  );
INSERT INTO police VALUES ('yufvugyu', 'person','pembrokeshire',  );

我想找出的是一个查询,它将列出 reported_by 并包含在这些区域中发生的搜索。像下面这样的东西:

reported_by     Stopped and searched
ceridigion              2
pembrokeshire           1   

最佳答案

SELECT reported_by,
       SUM(CASE WHEN search_type = 'person' THEN 1 ELSE 0 END) AS `Stopped and searched`
FROM police
GROUP BY reported_by

此处演示:

SQLFiddle

关于mysql - SQL查询以制作列表等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39023295/

相关文章:

java - MySQL.users 表作为应用程序身份验证

php - 如何使用foreach进行多次插入和删除

mysql - SQL 到 outfile - 文件存储在哪里? (MySQL, Windows)

sql - 根据列值从现有表生成新的临时表

python - 为查询集的下标元素赋值不起作用

php - 什么更消耗资源?每次存储或读取

sql - T-SQL,制作列表

mysql - 在 SQL 列中查找最常见的值

sql-server - 使用 SQL 数据库进行 Azure Active Directory 身份验证

ASP.Net 嵌套转发器逻辑 hell