A表内容: 年份nf,部门bm 2022,部门1 2022,部门2 2023,部门3 2023,部门4 2023,部门5 B表内容: 年份nf,人员ry,部门bm 2022,甲,部门1 2023,甲,部门2 2023,乙,部门1 希望是输入年份和人员,如果B表里有符合条件(人+年)的,就返回B表的部门,然后去查询A表中对应的部门数据。如果B表中找不到符合条件(人+年)的,返回条件年份全部的满足的部门,再去A表查对应的部门数据。 下面是我在orcle数据库参考例子写的脚本,但是会提示缺失关键字(ora-00905),请问应该怎么修改及脚本呢?或者fineReport有没有公式可以使用在数据集那里? 期望效果:输入(2023,甲)得到部门2,输入(2023,丙)得到部门3、部门4、部门5. select * from A表 a where a.nd='2023' and a.bm in case when (select count(1) from B表 b where b.ry = '甲' and nd = '2023') <> 0 then select bm from B表 b where b.ry = '甲' and nd = '2023' eles select bm from B表 b where nd='2023' end; |
最佳回答 |
||||
0
|
|