Můžete použít regexp_replace
funkce ponechat pouze číslice a písmena, například takto:
update mytable
set myfield = regexp_replace(myfield, '[^\w]+','');
Což znamená, že vše, co není číslice, písmeno nebo podtržítko, nebude nahrazeno ničím (včetně -, space, dot, comma
, atd.).
Pokud chcete zahrnout také _
který má být nahrazen (\w
jej opustí) můžete změnit regulární výraz na [^\w]+|_
.
Nebo pokud chcete být přísní na znaky, které je třeba odstranit, použijte:[- ]+
v tomto případě zde pomlčku a mezeru.
Také jak navrhuje Luiz Signorelly můžete použít k nahrazení všech výskytů:
update mytable
set myfield = regexp_replace(myfield, '[^\w]+','','g');