У меня есть несколько таблиц в SAP HANA и «создать таблицу столбцов» для объединения нескольких «сырых таблиц», и мне нужно заменить строки из одного столбца во вновь созданной таблице. Имя таблицы «Testsubject_status» Имя столбца «STATUS».
Причина, по которой мне нужно заменить строки, заключается в том, чтобы получить согласованную формулировку на конкретные записи.
В следующем примере, надеюсь, будет более понятно, что я имею в виду:
Имя таблицы: Testsubject_status --- Столбец: Статус
- Проверь меня
- Испытай его
- Тест с ID 1237 выполнен
- Проверь ее
- Тест с ID 928162 выполнен
- Тест с ID 991 выполнен
Результат должен быть
Имя таблицы: Testsubject_status --- Столбец: Статус
- Проверь меня
- Испытай его
- Тест пройден
- Проверьте ее
- Тест завершен
- Тест завершен
Я попробовал следующее:
CREATE COLUMN TABLE SCHEMATTT.Testsubject_status AS (
Select
Table1.Person AS “Person”,
Table1.Vers AS “Vers”,
Table2.Flnr AS “Flnr”,
Table3.Status AS “Status”
FROM
SCHEMATTT.Table1, SCHEMATTT.Table2, SCHEMATTT.Table3
WHERE SCHEMATTT.Table1.Person = SCHEMATTT.Table2.Person
AND SCHEMATTT.Table2.Flnr = SCHEMATTT.Table3.Flnr
SELECT
REPLACE_REGEXPR (‘with the id \d{1,}’ IN ‘TEST with %’ WITH ‘’) “replace_regexpr”
FROM SCHEMATTT.Testsubject_status
);
Создание таблицы работает. Оператор Replace_Regexpr работает только в том случае, если я не запускаю его вместе с оператором создания таблицы столбцов, а затем создает только таблицу с одним столбцом и записи «TEST with%» в каждой строке.
Дополнительная информация:
- Необходимо согласовать не только строку «Тест завершен», но и несколько других. Поэтому мне нужно использовать оператор замены более одного раза в этом конкретном столбце «Статус»
- Оператор "Test is done" не равен 1: 1 с другим оператором в таблице, поэтому другие операторы никак не могут быть использованы для этого: -)
Не уверен, что создание таблицы таким способом является лучшим, но я думаю, это другая история
Заранее спасибо за ваш вклад!
Это изображение для пояснения в комментариях:
![Status Entries and desired modification](https://i.stack.imgur.com/rF6o9.png)