2017-06-14 127 views
2

我有一個包含數百萬條記錄的表,在oracle中。在這個表中有一個需要更新的字段。 我需要爲每個數字添加一個'00'。像這樣:更新表記錄 - 爲每個2添加'00'數字

1234 -> 120034 

123456 -> 1200340056 

該字段的長度可以在2到16之間變化。由於長度的這種變化,我不知道如何進行此更新。 請同一個人給我一個手嗎?

謝謝。

+0

'00' 的位置是固定的?如果長度超過16,該怎麼辦?以及你到目前爲止嘗試了什麼查詢 – Prathyush

+0

@Prathyush,該字段的長度將增加以適合所有情況。對不起,我還沒有嘗試過任何查詢,我真的不知道如何做這個更新。 –

回答

3

您可以使用類似:

UPDATE your_table 
SET your_value = REGEXP_REPLACE(
        REGEXP_REPLACE(
        your_value, 
        '(\d\d)', 
        '\100' 
        ), 
        '^((\d\d00)*\d\d)00$', 
        '\1' 
       ); 
後兩隻指數
+0

就是這樣!謝謝。下一次我必須先看看REGEXP。 –

相關問題