Я хотел бы создать представление в оракуле, который преобразует разделенные запятыми записи в столбцы - PullRequest
1 голос
/ 27 марта 2009

Я хотел бы создать представление

CUSTOMER, CUSTOMER_ID, PRODUCTS
ABC INC   1            A=XYX, B=ZZZ
DEF CO    2            A=XYX, B=ZZZ, C=WWW
GHI LLC   3            B=ZYX

Хотелось бы, чтобы вид был что-то вроде

CUSTOMER, CUSTOMER_ID, A    B    C
ABC INC   1            XYX  ZZZ
DEF CO    2            XYX  ZZZ  WWW
GHI LLC   3                 ZYX    

Мне было интересно, есть ли способ сделать это в оракуле быстрым и эффективным способом. Я знаю, что это может быть сделано с PLSQL или с некоторой логикой. Основное беспокойство вызывает производительность, поскольку мне нужно каждые 10 минут извлекать данные из таблиц, которые содержат огромные объемы данных и не хотят, чтобы запрос представления занимал больше этого.

Есть идеи или предложения?

Спасибо

Tam

Ответы [ 2 ]

1 голос
/ 27 марта 2009

всегда есть только A, B и C? если это так, используйте substr и instr

0 голосов
/ 27 марта 2009

Как говорит Мэтью, на самом деле это просто вопрос строковых функций, чтобы изолировать эти значения, но если вы ожидаете, что сможете запросить представление с помощью предикатов, таких как B = XYZ, то вам придется взглянуть на добавление функции. индексы на базовых таблицах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...