Эффективный запрос для поиска одного символа из огромной таблицы с 100 полями - PullRequest
0 голосов
/ 10 января 2011

У меня есть таблица, которая имеет 100 полей.В таблице около 1000 записей.Я хочу знать, есть ли в любом поле какой-либо записи символ "".Имея большое количество полей (100), я хочу знать, как я могу сформировать запрос, чтобы узнать, есть ли в любом поле в любой записи символ "".Я не должен использовать динамический SQL: (

1 Ответ

0 голосов
/ 10 января 2011

ОК, без использования динамического SQL вы можете создать необходимый статический SQL следующим образом:

select 'select pk, ''' || column_name
        || ''' col from mytable where ' 
        || column_name || ' like ''%x%'';'
from user_tab_columns
where table_name = 'MYTABLE';

Это выведет оператор выбора для каждого столбца, который затем можно будет запустить как скрипт SQL Plus:

select pk, 'PK' col from mytable where PK like '%x%';
select pk, 'COL2' col from mytable where COL2 like '%x%';
select pk, 'COL3' col from mytable where COL3 like '%x%';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...