Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
5.5(EOL), 10.0(EOL), 10.1(EOL), 10.2(EOL)
Description
Consider this SELECT with UNIONs using different data types for the same column:
SELECT 20 AS x UNION SELECT null UNION SELECT 2.2; |
Gives:
+------+
|
| x |
|
+------+
|
| 9.9 |
|
| NULL |
|
| 2.2 |
|
+------+
|
It seems somewhat non-intuitive that 9.9 becomes 20 ...!
The issue was first reported here:
https://dba.stackexchange.com/questions/204757/problem-with-union-casting-integer-to-ceilingdecimal
It appears to have been fixed in 10.3, specifically 10.3.1. I can't point at the exact patch right away, but there was a major refactoring work and various bugfixes in the area –
MDEV-9495,MDEV-9497, etc.Could you please check whether current 10.3 works okay for you?