You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The following select (which doesn't make sense by itself, it's just a demonstration of the problem) returns different field names and precisions in FB2.0.(0/1) vs FB1.5.X, dialect 1 database:
CREATE TABLE TESTTAB
(ID NUMERIC(15, 2));
SELECT ID FROM TESTTAB GROUP BY ID
UNION
SELECT CAST(0 AS NUMERIC(15,2)) AS ID FROM RDB$DATABASE
FB 1.5:
ID
----
0.00
FB 2.0:
F_1
-----
0.000
If i exchange the two selects in the union, i get:
FB 1.5:
ID
----
0.00
FB 2.0:
ID
-----
0.000
Although it's possible to workaround the problem by explicit typecasts and aliases in all branches of the union statement, this inconsistency doesn't look reasonable and affects backward compatibility.
NOTE! Do _not_ use double 0e0 as test value!
Seems that this is the only number which representation on Windows and Linux differ (on Linux it has one additional zero in the decimal part).
The text was updated successfully, but these errors were encountered:
I'm not sure about recent v2.0.x point releases, but v2.1 and v2.5 return correct alias and scale in both dialect 1 and 3, so I mark this issue as resolved.
Test Details: NOTE! Do _not_ use double 0e0 as test value!
Seems that this is the only number which representation on Windows and Linux differ (on Linux it has one additional zero in the decimal part).
Test Specifics: [Platform (Windows/Linux) specific]
Submitted by: michalk1 (michalk1)
The following select (which doesn't make sense by itself, it's just a demonstration of the problem) returns different field names and precisions in FB2.0.(0/1) vs FB1.5.X, dialect 1 database:
CREATE TABLE TESTTAB
(ID NUMERIC(15, 2));
SELECT ID FROM TESTTAB GROUP BY ID
UNION
SELECT CAST(0 AS NUMERIC(15,2)) AS ID FROM RDB$DATABASE
FB 1.5:
ID
----
0.00
FB 2.0:
F_1
-----
0.000
If i exchange the two selects in the union, i get:
FB 1.5:
ID
----
0.00
FB 2.0:
ID
-----
0.000
Although it's possible to workaround the problem by explicit typecasts and aliases in all branches of the union statement, this inconsistency doesn't look reasonable and affects backward compatibility.
Commits: 27e2ee9
====== Test Details ======
NOTE! Do _not_ use double 0e0 as test value!
Seems that this is the only number which representation on Windows and Linux differ (on Linux it has one additional zero in the decimal part).
The text was updated successfully, but these errors were encountered: