TABLE_A
CARGO - HELPERS
250 - 125|126|5|...(AS MANY AS THEY ARE ASSIGNED ON THE PROGRAM)
TABLE_B
ID - NAME
5 - JAKE
125 - JOSH
126 - MEGAN
9001 - VEGETA
10 - SPANISH INQUISITION
Как я могу присоединиться к таблицам A и B, чтобы получить всех, кто помогал в машине go?
Нужно ли мне писать функцию?
Я не разрабатывал программу. Я создаю информационную панель и мне нужна эта информация.
Использование ORACLE 11g DB
ЗАКЛЮЧЕНИЕ --- РЕШЕНО
Через некоторое время исследование и помощь друзей Я смог получить SQL, который работал в моем случае.
SELECT CARGO, HELPERS
FROM TABLE_A
INNER JOIN table_b B ON B.ID IN (SELECT regexp_substr(HELPERS,'[^|]+', 1, level)
FROM dual
CONNECT BY regexp_substr(HELPERS,'[^|]+', 1, level) IS NOT NULL)
Использование регулярных выражений, чтобы получить все до первого |
, затем продолжить, пока не могу найти другая труба. Не правильное объяснение, но может помочь вам.