Отбросьте все столбцы с некоторым префиксом в их имени в оракуле

У меня есть таблица, в которой более 300 столбцов. Теперь я хочу удалить некоторые определенные столбцы набора, начиная с некоторой строки префикса. Поскольку даже этих столбцов больше 100, поэтому я ищу скрипт, который может удалить все такие столбцы, соответствующие их строке суффикса.

например У меня есть столбцы ниже в таблице - solExtMenber, solExtEvent, solExtTime, ID, name, soleExtTime. Я хочу удалить все столбцы, начинающиеся с solExt.

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
0
131
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Запросите USER_TAB_COLUMNS и создайте скрипт, который будет использовать динамический SQL и выполнять свою работу. Например:

SQL> CREATE TABLE test
  2  (
  3     id             NUMBER,
  4     solextmember   NUMBER,
  5     solextevent    NUMBER,
  6     name           VARCHAR2 (10)
  7  );

Table created.

SQL> BEGIN
  2     FOR cur_r
  3        IN (SELECT 'alter table test drop column ' || column_name command
  4              FROM user_tab_columns
  5             WHERE     table_name = 'TEST'
  6                   AND column_name LIKE 'SOLEXT%')
  7     LOOP
  8        EXECUTE IMMEDIATE cur_r.command;
  9     END LOOP;
 10  END;
 11  /

PL/SQL procedure successfully completed.

SQL> DESC test;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 ID                                                 NUMBER
 NAME                                               VARCHAR2(10)

SQL>

Однако, поскольку вы использовали «удалить» и «удалить», а также «префикс» и «суффикс», этот код, возможно, потребуется скорректировать, как только вы примете решение.

Спасибо Littlefoot .. Это то, что я искал.

Rahul Jain 18.12.2020 12:52

Другие вопросы по теме