合并两条SQL语句,数据记录并列显示在一列?

第一条sql语句:
select ug.group_id u1, ug.group_fullname u2, count(a.item_id) w1,
sum(CASE
WHEN (a.belongsto=1 and a.issuance_status=2) THEN
1
ELSE
0
END) w2,
sum(CASE
WHEN (a.belongsto=1 and a.issuance_status=4) THEN
1
ELSE
0
END) w3
from xzsp_service a
left join UG_GROUP g
on a.group_Id = g.group_Id
left join XZSP_UGGROUP ug
on g.group_Id = ug.group_Id
inner join ug_org org
on org.group_id = g.group_id
where (a.belongsto = '1' )
and g.type='org'
and ug.group_type ='6'
group by ug.group_id,ug.group_fullname ,org.sortno
order by org.sortno
第二条sql语句:
select ug.group_id u1, ug.group_fullname u2,count(b.item_id) w1,
sum(CASE
WHEN (b.belongsto=2 and b.issuance_town_status=2) THEN
1
ELSE
0
END) w2,

sum(CASE
WHEN (b.belongsto=2 and b.issuance_town_status=4) THEN
1
ELSE
0
END) w3
from xzsp_service_to_service b
left join UG_GROUP g
on b.group_Id = g.group_Id
left join XZSP_UGGROUP ug
on g.group_Id = ug.group_Id
inner join ug_org org
on org.group_id = g.group_id
where (b.belongsto='2')
and g.type='org'
and ug.group_type ='6'
group by ug.group_id,ug.group_fullname ,org.sortno
两条SQL语句单独分别去查询可以查到记录,但使用union all 合并关联SQL就查不出来,请大师们帮忙看一下,或者是有没有其它方法,可以解决合并上面所说的两条SQL语句?

这个我项目里的代码,和你的问题差不多。我这里能执行。上午没有帮你解决问题。。你看看这个能不能帮到你。

SELECT wm_shiji_addr AS 地址, warm_time AS 时间, warm_jz_num 集中器编号, wm_num 电表编号,
warm_reason 报警原因, 处理人 = (CASE WHEN warm_deal_with IS NULL
THEN '未处理' WHEN warm_deal_with IS NOT NULL THEN warm_deal_with END),
备注 = (CASE WHEN warm_remark IS NULL THEN '无备注' WHEN warm_remark IS NOT NULL
THEN warm_remark END)
FROM warm_new, wm_shiji_info
WHERE warm_new.warm_wm_or_em_num = wm_shiji_info.wm_shiji_num AND
wm_shiji_info.jz_num = warm_new.warm_jz_num
UNION
SELECT em_shiji_addr AS 地址, warm_time AS 时间, warm_jz_num 集中器编号, em_num 电表编号,
warm_reason 报警原因, 处理人 = (CASE WHEN warm_deal_with IS NULL
THEN '未处理' WHEN warm_deal_with IS NOT NULL THEN warm_deal_with END),
备注 = (CASE WHEN warm_remark IS NULL THEN '无备注' WHEN warm_remark IS NOT NULL
THEN warm_remark END)
FROM warm_new, em_shiji_info
WHERE warm_new.warm_wm_or_em_num = em_shiji_info.em_shiji_num AND
em_shiji_info.jz_num = warm_new.warm_jz_num
UNION
SELECT jz_addr AS 地址, warm_time AS 时间, warm_jz_num 集中器编号, 电表编号 = '000000000000',
warm_reason 报警原因, 处理人 = (CASE WHEN warm_deal_with IS NULL
THEN '未处理' WHEN warm_deal_with IS NOT NULL THEN warm_deal_with END),
备注 = (CASE WHEN warm_remark IS NULL THEN '无备注' WHEN warm_remark IS NOT NULL
THEN warm_remark END)
FROM warm_new, jz_info
WHERE warm_new.warm_jz_num = jz_info.jz_num AND warm_wm_or_em_num IS NULL追问

谢谢你,我这边已经找到问题了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-28
你怎么union all的?

直接把这两个sql 用 union all 连接起来,应该是可以的啊。