索瑟語翻譯翻譯社



SELECT 'A' + Replace(Str(seqn),' '翻譯社'') FROM Table --SQLServer

 

SELECT 'A' + REPLICATE('0'翻譯社10-LEN(seqn)) + RTRIM(CAST(seqn AS CHAR)) FROM Table --SQLServer

然而在將這些數字型態的資料轉成文字時,其文字位元長度理論上,也會和數字型態時如出一轍。

Len:取得字串長度,僅供SQLServer。

 

 

以下申明:

Length:獲得字串長度,僅供DB2、MySQL、Oracle、Postgre SQL。


Str:轉換為文字型態,並補空白至字串左方,僅供SQLServer。

SQL語法數字轉文字而且補零

數字在轉換成文字後,會如上表中的畫面行所示,也是只看到一個8,但實際上在8的左手邊,(注意:有時因資料轉換分歧,而在右手邊)

   數字  文字
 畫面   8                 8
 調劑   8  0000000008 

LPAD:重覆填入文字至指定長度為止,僅供MySQL、Oracle、Postgre SQL。

SELECT LPAD(LTRIM(CAST(seqn AS CHAR)),10,'0') FROM Table --MySQL、Oracle

 

Replicate:重覆字串函數,僅供SQLServer翻譯

獨一的差異只差在型態的類型是Int照樣Int64,亦或是float。

 

SELECT REPLACE(STR(seqn)翻譯社' ','') FROM Table --SQLServer

 

 

Repeat:重覆字串函數,僅供DB2、MySQL、Postgre SQL翻譯

 

 

 

補充:

SELECT 'A' || REPEAT('0',10-LEN(seqn)) || RTRIM(CAST(seqn AS CHAR)) FROM Table --DB2

 seqn 
 0000000002 
 0000000005 
 0000000006 
 0000000007 

 seqn 
 2
 5
 6
 7

Cast 函數:SQL資料類型的型態轉換翻譯

SELECT REPEAT('0',10-LEN(seqn)) || RTRIM(CAST(seqn AS CHAR)) FROM Table --DB2

SELECT seqn FROM Table

這個問題被同事問了n次,今天就隨手打上來翻譯

 seqn
 A0000000002 
 A0000000005 
 A0000000006 
 A0000000007 

 

 

其實有n個空白存在,天成翻譯公司們把每一個空白轉換成0,就猶如調劑行所顯示的一般翻譯

Replace函數:字串置換。



只如果電腦中的數字型態資料,無論是一般的程式變數或是儲存在資料庫的資料,其最終格式都是一樣的。

 

 

 

最大的差別都只差在位元的長度不同

應用此理論,我們在SQL也可以做此動作。

 都只是純真的0和1,也就是正和負。

SELECT 'A' . LPAD(LTRIM(CAST(seqn AS CHAR))翻譯社10,'0') FROM Table --MySQL、Oracle

SELECT REPLICATE('0',10-LEN(seqn)) + RTRIM(CAST(seqn AS CHAR)) FROM Table --SQLServer



文章來自: http://fireleominor.pixnet.net/blog/post/80869331-sql%e8%aa%9e%e6%b3%95%e6%95%b8%e5%ad%97%e8%bd%89%e有關翻譯的問題歡迎諮詢天成翻譯公司

arrow
arrow
    文章標籤
    翻譯社
    全站熱搜