首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

根据A表的条件COUNT(a),根据B表的条件COUNT(b),且两个条件无交集,怎么写

2012-04-20 
根据A表的条件COUNT(a),根据B表的条件COUNT(b),且两个条件无交集,如何写?SELECTCOUNT(CASE WHEN ds.XKDM

根据A表的条件COUNT(a),根据B表的条件COUNT(b),且两个条件无交集,如何写?
SELECT 
COUNT(CASE WHEN ds.XKDM='010000' AND ds.LWPSZJ='是' THEN 1 ELSE NULL END) AS LWPSZJCount,
COUNT(CASE WHEN lw.XKDM='010000' AND lw.YJSFLM='1' THEN 1 ELSE NULL END) AS LWSSCount,
COUNT(CASE WHEN lw.XKDM='010000' AND lw.YJSFLM='2' THEN 1 ELSE NULL END) AS LWBSCount
FROM T_DS ds, T_LW lw
inner join T_YJSFL yjsfl on lw.YJSFLM=yjsfl.YJSFLM

结果是错的,可是不知道该怎么写了,求高手

[解决办法]

SQL code
select * from  (select *,COUNT(CASE WHEN ds.XKDM='010000' AND ds.LWPSZJ='是' THEN 1 ELSE NULL END) AS LWPSZJCount) t1 , (select *,COUNT(CASE WHEN lw.XKDM='010000' AND lw.YJSFLM='1' THEN 1 ELSE NULL END) AS LWSSCount,COUNT(CASE WHEN lw.XKDM='010000' AND lw.YJSFLM='2' THEN 1 ELSE NULL END) AS LWBSCount) t2 where t1.YJSFLM=t2.YJSFLM 

热点排行