查询语句 联合查询的有关问题
查询语句 联合查询的问题

联合查询,下面查的a1等于11是对的,上面联合查询a1变成99了,关联条件都写了的。。。
------解决思路----------------------
只能把两个SUM()分别做成2个子查询,最后合并起来。
------解决思路----------------------
select SUM(s.ITEM_MONTH_VALUE_1) from tlk_dept_budget a,tlk_dept_budget_sub b,tlk_addition_of_staff s
where a.ID = b.parent and charindex(a.ITEM_DEPTNAME , CONVERT(VARCHAR(200),s.ITEM_DEPARTMENT_NAME)) > 0
and b.ITEM_COST_BUDGET ='11' and a.item_budget_year = '2015'
and (s.item_is_base is null or s.item_is_base ='' or s.item_is_base ='否')
select SUM(s.ITEM_MONTH_VALUE_1) as a1 from tlk_dept_budget a , tlk_addition_of_staff s where charindex(a.ITEM_DEPTNAME , CONVERT(VARCHAR(200),s.ITEM_DEPARTMENT_NAME)) > 0
联合查询,下面查的a1等于11是对的,上面联合查询a1变成99了,关联条件都写了的。。。
------解决思路----------------------
只能把两个SUM()分别做成2个子查询,最后合并起来。
------解决思路----------------------
select SUM(s.ITEM_MONTH_VALUE_1),b.ITEM_MONTH_1 as b1 from tlk_dept_budget a,tlk_addition_of_staff s尝试一下
,(SELECT parent,SUM(ITEM_MONTH_1)ITEM_MONTH_1 FROM tlk_dept_budget_sub WHERE b.ITEM_COST_BUDGET ='11' GROUP BY parent)b
WHERE a.ID = b.parent AND charindex(a.ITEM_DEPTNAME , CONVERT(VARCHAR(200),s.ITEM_DEPARTMENT_NAME)) > 0
and a.item_budget_year = '2015'
and (s.item_is_base is null or s.item_is_base ='' or s.item_is_base ='否')