Darsh12345 Ответов: 1

ORA-00942: таблица или представление не существуют


я создал таблицу и вставил запись, но в запросе join отображается ошибка.

Что я уже пробовал:

select gi.group_members as ID, em.EMP_NAME as NAME, em.EMAIL_ID as EMAIL , v.DIR_MOBILE
from groupinfo gi 
join emp_master em on gi.group_members= '3'|| EMP_NO || '0' 
join V_EMP_MOBILE v on v.DIR_EMP_NO='3'|| EMP_NO || '0'
and group_name='oper';

CHill60

Какая ошибка?
Что произойдет, если вы запросите таблицу напрямую?

jsc42

Как говорит @CHill60, какая ошибка?

Существует миллион и одна возможная ошибка, каждая из которых имеет свои причины.

Я предполагаю, что у вас есть поля EMP_NO и / или group_name, присутствующие в нескольких таблицах, поэтому Oracle не знает, какой из них использовать. Попробуйте использовать квалифицированные имена, например em.EMP_NO и gi.group_name (если они находятся в emp_master и groupinfo соответственно, в противном случае отрегулируйте их по мере необходимости).
Или EMP_NO числовое значение? В этом случае вам может потребоваться привести / преобразовать в текст, если gi.group_members и v. DIR_EMP_NO являются текстами; в противном случае, если все они являются числами, преобразуйте сцепленные строковые выражения в арифметические выражения (точная формула зависит от того, имеет ли EMP_NO константу no цифр, исключая начальные нули, или нет).

В заключение ... пожалуйста, предоставьте больше информации, так как мы не можем точно угадать, что вы пытаетесь сделать.

Я оставлю это кому-то другому, чтобы прокомментировать использование выражений, а не простых имен столбцов в предложениях join.

1 Ответов

Рейтинг:
1

Maciej Los

Посмотрите на это: Oracle / PLSQL: сообщение об ошибке ORA-00942[^]
Там вы найдете несколько вариантов, как решить эту проблему.