2013-05-22 75 views
0

我有問題如何刪除之間「)」,「(」和「/」中的SQL。我只是想刪除空間NOT include the text空間。那怎麼辦?如何刪除和替換「)」空間?

For example:- 
Sek. 175 (1) (a)/(b) atau Sek. 187B (1) (a)/(b) 

AND i want the text to be like this: 
Sek.175(1)(a)/(b) atau Sek.187B(1)(a)/(b) 

This is my query: 
SELECT distinct mhn.id_mohon, 
'oleh sebab (' || ku.ruj_kanun || ')' ruj_kanun 
    FROM mohon mhn, kod_urusan ku, mohon_ruj_luar mrl, pguna pg, 
     kod_perintah kp 
WHERE mhn.id_mohon = :p_id_mohon 
    AND mhn.kod_urusan = ku.kod(+) 
    AND mhn.id_mohon = mrl.id_mohon(+) 
    AND mrl.kod_perintah = kp.kod(+) 
    AND mhn.dimasuk = pg.id_pguna(+) 
    AND mhn.kod_urusan = 'PHKK' 

任何人都知道這件事?

+0

請告訴我們你的SELECT語句。 – Tobias

+0

變量檢索? – matzone

回答

1
replace(
    regexp_replace(
     regexp_replace(
     regexp_replace(
      string, 
      '\s([a-zA-Z]+($|\W))', chr(0)||'\1' 
     ), 
     '((^|\W)[a-zA-Z]+)\s', '\1'||chr(0) 
    ), 
    '\s'), 
    chr(0), ' ') 

fiddle

+0

Egor Skriptunoff - >非常感謝。:) –

0

絕對不是最有效的,但這個應該工作

REPLACE(REPLACE(column, ' ', ''), 'atau', ' atau ') 
+0

我也'TRIM'得到的字符串;-) –

+0

順便說一句,它不會處理單詞'atatau'好(我不知道它是否存在或可能是一個發誓詞)。 –

0
Replace(') (', ')(') 

等等。