当我运行"SELECT 0 AS COL ..."时,MySQL列类型返回decimal或bigint

bah*_*tan 5 java mysql jdbc

当我运行一个选择的声明,如

SELECT 0 AS COL FROM MYTABLE ..
Run Code Online (Sandbox Code Playgroud)

两个不同的mysql安装返回不同的数据类型.一个返回BIGINT,第二个返回DECIMAL.对于这两种情况,jdbc驱动程序是相同的,com.mysql.jdbc.Driver 5.1

服务器版本:5.1.69-community(返回BIGINT)5.6.31(返回DECIMAL)

有任何配置差异?我必须为两次安装获得BIGINT.它与mysql版本直接相关吗?

O. *_*nes 2

您可以通过以下方式强制解决问题

 select CAST(0 AS UNSIGNED INTEGER) AS COL
Run Code Online (Sandbox Code Playgroud)

无符号整数在线路上显示为 BIGINT。