目前我正在使用 mysql 5.7 开发和 5.6 生产。每次我在开发中使用 group by 运行查询时,我都会收到一些错误,例如“错误代码:1055。SELECT 列表的表达式 #1 不在 GROUP BY 中”
这是查询。
SELECT c.id, c.name, i.*
FROM countries c, images i
WHERE i.country_id = c.id
GROUP BY c.id; Fixed for 5.7;
SELECT c.id, c.name,
ANY_VALUE(i.url) url,
ANY_VALUE(i.lat) lat,
ANY_VALUE(i.lng) lng
FROM countries c, images i
WHERE i.country_id = c.id
GROUP BY c.id;
为了解决这个问题,我使用了 5.7 ANY_VALUE 中的 mysql 函数,但主要问题是它在 mysql 5.6 中不可用
因此,如果我修复用于开发的 sql 语句,我将在生产中遇到错误。
您知道 mysql 5.6 中 ANY_VALUE 函数的任何解决方案或 polifill 吗?