用MYSQL数据库写一条带 EXISTS 子查询的SQL语句实现下述查询要求: 查询人员表中去过地点“Today便利店”的人数。请给统计出的人数命名为number。
时间: 2024-02-27 16:54:04 浏览: 68
一个查询的SQL语句请教,希望能够用一条SQL语句得到结果
可以使用 EXISTS 子查询和 COUNT 函数来实现该查询。具体的 MySQL 语句如下:
```
SELECT COUNT(*) AS number FROM person
WHERE EXISTS (
SELECT 1 FROM visit
WHERE person.id = visit.person_id AND visit.location = 'Today便利店'
)
```
解释:首先从 person 表中选择所有人,并通过 EXISTS 子查询判断该人是否去过 'Today便利店'。如果存在这样的记录,则该人会被包含在结果集中。最后,使用 COUNT 函数统计包含在结果集中的记录数,即为去过 'Today便利店' 的人数。
阅读全文