原因是mysql版本是5.7及以上, mysql默认配置是:sql_mode="ONLY_FULL_GROUP_BY"
加上这个代码使其兼容就可以
try {
Db::execute("SET @@sql_mode='';");
} catch (\Exception $e) {
}
$menu = Db::name('enterprises_info')->where('delete_time', 0)->field('e_id, province')->group('province')->select();
代码来源于fastadmin开源框架, 感谢!