Bootstrap

MySQL 报错> 1055 -Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated c

mysql报错

> 1055 -Expression #2
 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'hibiz_db.cent_manl_reim_bill_info_c.PSN_NAME' 
 which is not functionally dependent on columns in GROUP BY clause; 
 this is incompatible with sql_mode=only_full_group_by

mysql默认设置了sql_mode=only_full_group_by,就是select的列都要在group中,

使用any_value()函数解决select的列都要在group by中的问题。

  1. any_value()会选择被分到同一组的数据里第一条数据的指定列值作为返回数据。(mysql有些版本不支持该函数)

  2. max()函数可以解决这个问题;


select * from V$NLS_PARAMETERS

NLS_LANG=“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”

select * from V$NLS_PARAMETERS

步骤二:在环境变量中添加两条配置信息,鼠标右键我的电脑(计算机/此电脑)等图标,选择属性,选择高级系统设置,选择高级选项卡的环境变量,在系统变量里新建两条配置:

1、LANG=zh_CN.GBK(GBK是这样形式的,不同编码这里的value值需要跟着改变)

2、NLS_LANG=AMERICAN_AMERICA.ZHS16GBK(这个value值就是我们步骤一中拼接好的那个值)

重启plsql

;