2010-09-10 18 views

回答

0

可能是:

select xx as fieldA from ... where fieldA is not null group by xxx having 

帮助你

+0

这将不起作用,因为别名在GROUP BY中不可用。 (他们在'ORDER BY'和'HAVING')。更改为'WHERE fieldA IS NOT NULL'会改变被分组的行数,可能会改变原来的意图。 – 2017-05-07 02:57:40

0

应该包括在GROUP BY所有非聚合列。 5.7.5引入了only_full_group_bySQL_MODE来执行此操作(虽然不抱怨某些情况下它实际上可以)。

当你有一个非聚合列时,代码可以自由地为这样的列提供它喜欢的任何值(在你的案例中为xx)。鉴于此,那么HAVING怎么会有理性的意义。

这不是一个错误;这是用户错误。

相关问题