问题描述:
现要统计工作计划填写次数.工作计划的数据分三个表存储,主表(WORKPLAN)记录填写人,计划条目(WORKPLAN_ITEM)记录具体的计划,计划完成情况(WORKPLAN_ITEM_COMPLETE)记录计划完成后的条目.现在要一同统计出,每个人的计划填写次数,完成情况填写次数.即统计主表在两个子表中有对应数据的条数.下面是我写的错误的语句.select
org.name as name,
count(distinct p0.id) as times,
count(distinct p1.id) as timesC
from
WORKPLAN as p0,
WORKPLAN as p1,
ORGMODEL_USERINFO as org,
WORKPLAN_ITEM as si,
WORKPLAN_ITEM_COMPLETE as sci
where
p0.id = si.planid and
p1.id = sci.planid and
org.id = p0.creator
group by p0.creator, org.name
现要统计工作计划填写次数.工作计划的数据分三个表存储,主表(WORKPLAN)记录填写人,计划条目(WORKPLAN_ITEM)记录具体的计划,计划完成情况(WORKPLAN_ITEM_COMPLETE)记录计划完成后的条目.现在要一同统计出,每个人的计划填写次数,完成情况填写次数.即统计主表在两个子表中有对应数据的条数.下面是我写的错误的语句.select
org.name as name,
count(distinct p0.id) as times,
count(distinct p1.id) as timesC
from
WORKPLAN as p0,
WORKPLAN as p1,
ORGMODEL_USERINFO as org,
WORKPLAN_ITEM as si,
WORKPLAN_ITEM_COMPLETE as sci
where
p0.id = si.planid and
p1.id = sci.planid and
org.id = p0.creator
group by p0.creator, org.name
解决方案 »
- 如何提高like查询的速度?
- sql数据库—游标输出出错
- 我要设置全文索引的时候提示不是可用于强制全文搜索键的有效索引。必须指定唯一的、不可为空的、单列的索引。
- 怎么往sqlserver里输数据啊?
- 根据存储过程的名称查询存储过程所有的列的名称和类型
- 访问数据库是2000 已打SP4补丁,插入数据库是2008 R2 64位,
- 关于大批量数据删除的优化(在线等待)
- 请问, 我把远程的sql server 服务器端改了以后。 在本地怎么连接?
- ms-sql中的数据库备份文件资料放在哪里?--赐教
- 求候选码算法(倾囊征答!)
- 急, 同一局域网内联结不上SQL2000数据库
- 关于一个日期格式字段的更新~~
from WORKPLAN a ,
(select id , count(*) as cnt from WORKPLAN_ITEM group by id) b,
(select id , count(*) as cnt from WORKPLAN_ITEM_COMPLETE group by id) c
where a.id = b.id and a.id = c.id
org.name as name,
count(distinct si.planid) as times,
count(distinct sci.planid) as timesC
from
WORKPLAN as p0 inner join ORGMODEL_USERINFO as org on org.id = p0.creator
left join WORKPLAN_ITEM as si on p0.id = si.planid
left join WORKPLAN_ITEM_COMPLETE as sci on p0.id = sci.planidgroup by org.name
-------------------
1 1
2 2
3 1
-------------------
WORKPLAN_ITEM(id, planid, content) id refrence WORKPLAN(id)
-------------------
1 1 'ic11'
2 1 'ic21'
3 2 'ic32'
3 3 'ic32'
-------------------WORKPLAN_ITEM_COMPLETE(id, planid, content) id refrence WORKPLAN(id)
-------------------
1 1 'cc11'
2 1 'cc21'
-------------------ORGMODEL_USERINFO (id, name)
-------------------
1 'a'
2 'b'
-------------------输出结果应为
-------------------
a 2 1
b 1 0
-------------------先对楼上表示感谢.
同时也谢谢 dawugui(潇洒老乌龟)