Один простой способ сделать это - использовать функцию TRANSLATE (значение, replacewith, replacelist). Он заменяет все символы в списке (третий параметр) значением во втором параметре.
Вы можете использовать это, чтобы по существу стереть все нечисловые символы из строки символов, включая пробелы.
Просто сделайте список в третьем параметре содержащим все возможные символы, которые вы можете увидеть, которые вам не нужны. Переведите их в пустое пространство, и в результате вы получите только те символы, которые вам нужны, по сути, удалив ненужные символы.
Примечание: я включил все обычные символы (не буквенно-цифровые) для удобства других, у которых значения символов могут быть больше, чем в вашем примере.
Select
TRANSLATE(UCASE(CHAR_COLUMN),'',
'ABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()-=+/\{}[];:.,<>? ')
FROM TABLE_A
Проще говоря: для вашего конкретного набора значений, поскольку существует гораздо меньший набор возможных символов, вы можете обрезать список замены до следующего:
Select
TRANSLATE(UCASE(CHAR_COLUMN),'','ABCDEFGHIJKLMNOPQRSTUVWXYZ(), ')
FROM TABLE_A
ПРИМЕЧАНИЕ: «UCASE» в CHAR_COLUMN не является обязательным, но это было приятное улучшение для упрощения этого выражения за счет исключения необходимости включать все буквенные символы нижнего регистра.
TRANSLATE(CHAR_COLUMN,'',
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#$%^&*()-=+/\{}[];:.,<>? ')