我有 4 个表,需要从其中 2 个表中获取值。
政策policy_id, template_id
报价quote_id,policy_id
quote_clause quote_clause_id, quote_id
quote_clause_variable quote_clause_variable_id, quote_clause_id, variable_name, value
-
每个策略policy_id有2-3条quotequote_id记录。
每个报价quote_id 有100-200 条quote_clausequote_clause_id 记录
。每个quote_clause_id 都有quote_clause_variable 的600-700 条记录。
我正在尝试获取特定 template_id 为 28 的所有 policy_id,并从那里获取变量名称为“R01011C1”的 quote_clause_variable 值。
在这一点上我有点迷茫,下面的查询都不是正确的。
SELECT policy.policy_id, quote_clause_variable.value
FROM mciaweb.policy
LEFT JOIN mciaweb.quote ON policy_id = policy_id
LEFT JOIN mciaweb.quote_clause ON quote_id = quote_id
LEFT JOIN mciaweb.quote_clause_variable ON quote_clause_id = quote_clause_id
WHERE policy.template_id = '28'
AND variable_name = 'R01011C1';
select
(select value from mciaweb.quote_clause_variable
where variable_name in ('R01011C1')
and quote_clause_id in
(select quote_clause_id from MCIAWEB.quote_clause where quote_id in
(select quote_id from MCIAWEB.quote where policy_id in
(select policy_id from mciaweb.policy where template_id in ('28')
)))) situation,
policy_id
from mciaweb.policy where template_id = '28'
;
非常感谢您对此的任何帮助。