显示识别为“M”的患者多于识别为“F”的患者的省份。必须仅显示完整的省份名称
**患者表:**患者标识INT名字TEXT姓氏TEXT性别CHAR(1)出生日期DATE城市TEXT省份标识CHAR(2)过敏症TEXT身高INT体重INT
**省份名称表:**省份标识CHAR(2)省份名称TEXT
我试过了,但是没有用。
`select province_name
from patients p,province_names pn
where p.province_id = pn.province_id
and (count(p.province_id) group by p.patient_id having p.gender = 'M' ) >
(count(p.province_id) group by p.patient_id having p.gender = 'F') `
3条答案
按热度按时间o2gm4chl1#
聚合提供了一种直接的方法:
efzxgjgh2#
我认为您的问题已通过此查询解决
vnjpjtjt3#
如果您的MySQL版本是8.0.X.X或更高,您可以使用CTE来实现您的目标!!
(Run此命令进行检查:)
完整代码: