2017-09-02 56 views
0

我的表中包含列名accountnumber;如何用oracle中的特殊字符替換數字中的位置?

acctnum 
------- 
1234556777 
2335678000 

我使用Oracle想要的輸出使用SQL查詢

acctnum 
    --------- 
    123xxx6777 
    233xxx8000 

我試圖替換功能,但我沒有得到output.pls幫助。

+0

你要替換的前3個字符? –

+0

是的。我想用特殊字符替換前3個位置。請幫助我找到如何用特殊字符替換位置。 – minu

回答

0

如果我不明白錯誤,這可能對您有幫助嗎?

with a as 
(select '1234567' as acctnum from dual) 

select '###' || substr(acctnum,4) from a; 
+0

這是完美。如果我想用特殊字符替換第4,第5,第6位,我將如何使用 – minu

+0

請幫助我們將其用於我們的項目 – minu

+0

在Substr(1234567,4)聲明中,'4'表示開始子字符串的第四字符。將其更改爲5,6或你想要的。 –

0

如果你想更換一個x字符4,5和6,你可以通過這樣的SUBSTR功能做到這一點:

SELECT SUBSTR(acctnum, 1, 3) || 'xxx' || SUBSTR(acctnum, 7) AS acctnum 
FROM mytable;