Postgresql/Greenplum中將數字轉換為字符串TO_CHAR函數前面會多出一個空格


-- 問題1、、Postgresql中將數字轉換為字符串前面多出一個空格。

SELECT TO_CHAR('20181206' + 1, '99999999');

-- 解決1、使用如下,參數二前面加上fm就可以去掉空格了,如下:

SELECT TO_CHAR('20181206' + 1, 'fm99999999');

-- 設計思路
-- 1、使用當前的年月日生成yyyyMMdd格式的字符串

SELECT to_char(now(), 'yyyyMMdd')

-- 2、將生成的yyyyMMdd格式的字符串拼接00000

SELECT COALESCE(null, to_char(now(), 'yyyyMMdd')||'00000')

-- 3、將生成的yyyyMMdd格式的字符串拼接00000字符串轉換成數字類型,然后加1

SELECT to_number(COALESCE(null, to_char(now(), 'yyyyMMdd')||'00000'), '9999999999999') + 1

-- 4、將生成的數字類型的批次號轉換為字符串類型的,字符串最前面有一個空格

select to_char(to_number(COALESCE(null, to_char(now(), 'yyyyMMdd')||'00000'), '9999999999999') + 1, '9999999999999')  

-- 5、將生成的數字類型的批次號轉換為字符串類型的,將批次號最前面的空格去掉

select to_char(to_number(COALESCE(null, to_char(now(), 'yyyyMMdd')||'00000'), '9999999999999') + 1, 'fm9999999999999')  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM