Как извлечь из строки только буквенно-цифровые символы?
Ниже для BigQuery Standard SQL
Вы также можете использовать \W - not word characters (≡ [^0-9A-Za-z_])
, как в примере ниже
REGEXP_REPLACE(merchant, r'\W', '')
Если обратиться к образцу данных из вашего вопроса
#standardSQL
WITH `project.dataset.table` AS (
SELECT "Al's Coffee" merchant UNION ALL
SELECT "Belinda & Mark Bakery" UNION ALL
SELECT "Noodle Shop 38"
)
SELECT REGEXP_REPLACE(merchant, r'\W', '') cleaned_merchant
FROM `project.dataset.table`
результат
Row cleaned_merchant
1 AlsCoffee
2 BelindaMarkBakery
3 NoodleShop38
Очевидно, что если вам нужен результат в нижнем регистре - добавьте соответствующую функцию - например,
SELECT REGEXP_REPLACE(LOWER(merchant), r'\W', '') cleaned_merchant
FROM `project.dataset.table`