mysql - 如何找到只有男性顾客的商店?

标签 mysql sql

我有这个架构:

人员(姓名、性别)

频率(名称、商店)

我的问题是,如何找到顾客全部为男性的商店?

最佳答案

您可以将 GROUP BYHAVING 结合使用:

SELECT frequents.shop
FROM frequents LEFT JOIN person ON frequents.name = person.name 
GROUP BY frequents.shop
HAVING SUM(person.sex = 'female') = 0 AND SUM(person.sex = 'male') > 0

demo at dbfiddle.uk

关于mysql - 如何找到只有男性顾客的商店?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54459497/

相关文章:

mysql - Cakephp 3 - 带限制的缓存查询

java - 从 Hibernate 中的 @Query 获取空结果

java - SQL 查询模式和相对性能

mysql - MySQL 中的循环和 if

sql - 如何在 SQL Server 2008 中搜索特殊字符 (%)

mysql ->= OR <= 组合会触发全表扫描吗?

sql - 带有部分单词的 MySQL 全文搜索

php - 如何防止智能引号符号写入我的数据库?

mysql - 使用两个 where 子句获取记录的排名

php - 将多个字段的值相加然后插入 php 中的 MySQl 列