[ https://issues.apache.org/jira/browse/HIVE7373?page=com.atlassian.jira.plugin.system.issuetabpanels:commenttabpanel&focusedCommentId=14076279#comment14076279
]
Sergio Peña commented on HIVE7373:

It will preserve the trailing zeros up to the scale allows.
For instance:
0 in decimal(5,4) would be 0
0.0 in decimal(5,4) would be 0.0
0.00 in decimal(5,4) would be 0.00
0.00000000 in decimal(5,4) would be 0.0000
Is that correct [~xuefuz] ?
> Hive should not remove trailing zeros for decimal numbers
> 
>
> Key: HIVE7373
> URL: https://issues.apache.org/jira/browse/HIVE7373
> Project: Hive
> Issue Type: Bug
> Components: Types
> Affects Versions: 0.13.0, 0.13.1
> Reporter: Xuefu Zhang
> Assignee: Xuefu Zhang
>
> Currently Hive blindly removes trailing zeros of a decimal input number as sort of standardization.
This is questionable in theory and problematic in practice.
> 1. In decimal context, number 3.140000 has a different semantic meaning from number
3.14. Removing trailing zeroes makes the meaning lost.
> 2. In a extreme case, 0.0 has (p, s) as (1, 1). Hive removes trailing zeros, and then
the number becomes 0, which has (p, s) of (1, 0). Thus, for a decimal column of (1,1), input
such as 0.0, 0.00, and so on becomes NULL because the column doesn't allow a decimal number
with integer part.
> Therefore, I propose Hive preserve the trailing zeroes (up to what the scale allows).
With this, in above example, 0.0, 0.00, and 0.0000 will be represented as 0.0 (precision=1,
scale=1) internally.

This message was sent by Atlassian JIRA
(v6.2#6252)
