小编ngc*_*man的帖子

联合将整数转换为天花板的问题(十进制)

我有这种情况,看起来 MySQL 正在采用最大的十进制值并尝试将其他值转换为该值。

问题是这个查询是由外部库生成的,所以我无法控制这个代码,至少在这个级别。你知道如何解决这个问题吗?

SELECT 20 AS x
  UNION SELECT null
  UNION SELECT 2.2;
+------+
| x    |
+------+
|  9.9 | -- why from 20 to 9.9
| NULL |
|  2.2 |
+------+
Run Code Online (Sandbox Code Playgroud)

预期结果

+------+
| x    |
+------+
|   20 | -- or 20.0, doesn't matter really in my case
| NULL |
|  2.2 |
+------+
Run Code Online (Sandbox Code Playgroud)

添加更多上下文,我使用 Entity Framework 6 和扩展库http://entityframework-extensions.net/批量保存更改,特别是方法 context.BulkSaveChanges();,该库使用“select union”创建查询.

mysql datatypes union mysql-5.6 decimal

10
推荐指数
2
解决办法
1707
查看次数

标签 统计

datatypes ×1

decimal ×1

mysql ×1

mysql-5.6 ×1

union ×1