我的查询显示 heidisql 错误,不知道如何修复 [重复]
Posted
技术标签:
【中文标题】我的查询显示 heidisql 错误,不知道如何修复 [重复]【英文标题】:my query is showing heidisql error a dont know how to fix [duplicate] 【发布时间】:2019-08-28 11:05:03 【问题描述】:SQL 错误 (1055):SELECT 列表的表达式 #2 不在 GROUP BY 子句中,并且包含在功能上不依赖于 GROUP BY 子句中的列的非聚合列“a.room id”;这与 sql_mode=only_full_group_by 不兼容
SELECT hotel_id,room_id,room_number,MAX(a.tc) AS "Count",MAX(tp) AS "MostProfit" FROM
(SELECT hotel_id,rooms.room_id,room_number,COUNT(rooms.room_id) AS "tc",SUM(room_price) AS "tp" FROM rooms JOIN bookings
ON rooms.room_id = bookings.room_id
GROUP BY rooms.room_id) a GROUP BY hotel_id
trying to get the rooms of hotels that got the most profit in a query
【问题讨论】:
你真的需要解释你想做什么。这可能会让您感到惊讶,但没有功能的查询并不一定要表达您想要做什么。 its query 获取每家酒店利润最高的房间 ***.com/questions/41887460/…答案没用,不起作用 【参考方案1】:错误信息暗示您需要将 group by 子句转换为
GROUP BY hotel_id, room_id, room_number
因为其他列 tc
和 tp
是聚合的,不需要包含在 group by 列表中,而 room_id
和 room_number
不是。
【讨论】:
以上是关于我的查询显示 heidisql 错误,不知道如何修复 [重复]的主要内容,如果未能解决你的问题,请参考以下文章