试图获得每个州的总约会。在 MySQL 1055 中出现错误
Posted
技术标签:
【中文标题】试图获得每个州的总约会。在 MySQL 1055 中出现错误【英文标题】:Trying to get total appointments per state. getting error in MySQL 1055 【发布时间】:2020-10-07 04:06:51 【问题描述】:这是我尝试按状态获取约会数据的查询
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"
【问题讨论】:
【参考方案1】:select
address.state stateName,count(1)
from
address
inner join patient on
address.address_id = patient.address_id
inner join appointment on
appointment.pt_id = patient.pt_id
group by
stateName;
【讨论】:
【参考方案2】:select address.state , patient.pt_id ,ointment.apt_id from address inner join patient on address.address_id = Patient.address_id 内部加入预约.apt_id;
【讨论】:
以上是关于试图获得每个州的总约会。在 MySQL 1055 中出现错误的主要内容,如果未能解决你的问题,请参考以下文章