以下是通过impala实现的。
CREATE TABLE longvalue(id string, somedata string);
INSERT INTO longvalue VALUES
('2333', 'some1'),('12333', 'some1'),('3', 'some1'),('133', 'some1'),('3333', 'some1');
现在,在hive中,我使用下面的命令
select id+1000000000 from longvalue;
结果是
1.000002333E9
1.000012333E9
1.000000003E9
1.000000133E9
1.000003333E9
我很困惑,为什么字符串接受了这里的加法?为了获得所需的输出,我尝试了以下命令,该命令返回所需的输出,如1000002333、1000012333、100000003、1000000133和100003333
SELECT CONCAT(CONCAT('1', '', REPEAT('0', 9-LENGTH(CAST(id AS STRING)))),'',id) from longvalue;
然而,我很想知道我们有多少种方法可以使用其他函数或方法来转换这些数据。
暂无答案!
目前还没有任何答案,快来回答吧!