mysql group by 字段 时 as 别名字段与表字段同名 问题

在处理mysql表数据查询时
group by 字段,这个字段如果用 as 定别名定了个和搜索的表字段重名了
那么,group by 这个字段将被优先使用表的字段,而不是 as 出来的字段

比如 tb 表存在 ctime 字段
使用如下语句查询时,将使用表的 ctime 字段,而不是 as 出来的 ctime

select *,FROM_UNIXTIME(ctime, '%H') as ctime from tb group by ctime;

如果需要 group by FROM_UNIXTIME(ctime, '%H') as ctime 这个值的话,就需要改别名
如下:

select *,FROM_UNIXTIME(ctime, '%H') as rtime from tb group by rtime;

这样就可以 group by FROM_UNIXTIME(ctime, '%H')

你可能感兴趣的:(mysql group by 字段 时 as 别名字段与表字段同名 问题)