两张表内关联,只取一张表的字段,数据库和cognos的执行差异
SQL语句如下:
select t1.*
from(
select curr_cd,curr_name
from rf_curr_cd
where curr_cd in(‘01’,‘13’)
) t1
join(
select src_curr_cd,tgt_curr_cd,rate
from rpt_dim_info_exchrate
where data_dt=‘2019-01-01’ and src_curr_cd=‘01’
)t2
on t1.curr_cd=t2.src_curr_cd
;
t1的数据
curr_cd | curr_name |
---|---|
01 | 人民币 |
13 | 港币 |
t2的数据
src_curr_cd | tgt_curr_cd | rate |
---|---|---|
01 | 01 | 1.0 |
01 | 99 | 1.0 |
在数据库运行的结果为:
curr_cd | curr_name |
---|---|
01 | 人民币 |
01 | 人民币 |
在cognos10 中t1 ,t2分别为两个查询,进行查询之间的关联,然后新建一个查询,只取t1表的字段,运行结果为:
curr_cd | curr_name |
---|---|
01 | 人民币 |
13 | 港币 |