присоединиться к трем столам в оракуле 11g - PullRequest
0 голосов
/ 02 октября 2018

у меня есть три таблицы, чтобы присоединиться к выбранному запросу .. этот запрос не работает

select policy_master.POLICY_REFER ,policy_master.CLIENT_NAME ,policy_master.ADRESS ,policy_master.POLICY_CLASS ,policy_master.POLICY_PRODUCT ,policy_master.EXECUTIVE_NAME ,policy_master.COMM_DATE ,
policy_master.EXPIRY_DATE ,policy_master.RENEWAL_DATE ,policy_master.GROSS ,policy_master.FED ,policy_master.FIF ,policy_master.STAMP_DUTY ,policy_master.PERMIUM ,policy_master.DESCRIPTION, 
POLICY_INSURER_DETAIL.INSURER_NAME,POLICY_INSURER_DETAIL.POLICY_NUMBER,POLICY_INSURER_DETAIL.P_SHARE,POLICY_INSURER_DETAIL.G_PREMIUM,POLICY_INSURER_DETAIL.BROKER_P,POLICY_INSURER_DETAIL.LEVY,
POLICY_INSURER_DETAIL.LEVY,POLICY_SUBAGENT_DETAIL.SUBAGENT_NAME,POLICY_SUBAGENT_DETAIL.BUSSINES_SHARE,POLICY_SUBAGENT_DETAIL.COMM_P,POLICY_SUBAGENT_DETAIL.COMM_VALUE
from POLICY_MASTER INNER JOIN POLICY_INSURER_DETAIL 
on policy_master.policy_refer = POLICY_INSURER_DETAIL.POLICY_REFER and
policy_master.policy_refer = POLICY_SUBAGENT_DETAIL.POLICY_REFER;

Пожалуйста, скажите мне, что я должен сделать

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

сделать внутреннее объединение третьей таблицы, если вы пропустили ее в предложении from.вот и все. ИЛИ вы можете использовать где предложение, как

from table1 a,table2 b,table3 c
where a.colname= b.colname and
            b.colname=c.colname.
0 голосов
/ 02 октября 2018

Чтобы упростить ответ, я удалил все явные столбцы и заменил их на select *.

Вы присоединились только к двум таблицам.Вы ссылаетесь на таблицу policy_subagent_detail в соединении с policy_insurer_detail (но вы не присоединяетесь к таблице подробностей субагента).Вам следует присоединиться к этой таблице и указать условия объединения, чтобы можно было извлечь из нее столбцы (как вы делали в списке столбцов рядом с ключевым словом select).

Я также добавил псевдонимы таблиц, чтобыКод короче.

select *
from POLICY_MASTER pm
inner join POLICY_INSURER_DETAIL pid on 
  pm.policy_refer = pid.POLICY_REFER
inner join POLICY_SUBAGENT_DETAIL psd on -- added join
  pm.policy_refer = psd.POLICY_REFER
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...