首页 > 解决方案 > 试图获得每个州的总约会。在 MySQL 1055 中出现错误

问题描述

这是我试图按状态获取约会数据的查询

select address.state , patient.pt_id , appointment.apt_id from address inner join patient on address.address_id = patient.address_id inner join appointment on appointment.pt_id = patient.pt_id group by address.state;

是我试图运行的语句,以查看是否可以提取约会列表。如果我按部分取消分组,数据库将返回一个包含所有提及状态、pt_id 和 apt_id 的表,但我需要按状态对它们进行分组并计算每个状态有多少约会。尝试按状态分组时,出现以下错误

“错误代码:1055。SELECT 列表的表达式 #2 不在 GROUP BY 子句中,并且包含在功能上不依赖于 GROUP BY 子句中的列的非聚合列 'U07uXB.patient.pt_id';这与 sql_mode=only_full_group_by 不兼容”

标签: mysqlsqlgroup-by

解决方案


选择 address.state , patient.pt_id ,约会.apt_id 从地址内部加入患者 address.address_id = Patient.address_id 内部加入约会约会.pt_id = Patient.pt_id group by address.state ,patient.pt_id ,约会.apt_id;


推荐阅读