日期:2014-05-18 浏览次数:21031 次
上传表 id 名称 上传路径 上传者 文档类型 22 WBS模板.pdf Manage\file\2012-05-15\17-40-43.pdf 20080962 pdf 23 5月通讯录.pdf Manage\file\2012-05-16\08-36-10.pdf 20080962 pdf 24 香水.pdf Manage\file\2012-05-16\08-47-10.pdf 20080962 pdf 下载表 id 名称 时间 下载者 1 WBS模板.pdf 2012-05-18 20080790 2 WBS模板.pdf 2012-05-18 20080962
select a.名称, 下载次数 = count(*) from 上传表 a left join 下载表 b on a.名称 = b.名称 -- 这个关联条件lz自己斟酌一下 group by a.名称
------解决方案--------------------
select a.*, 下载次数 = b.fc from 上传表 a left join (select id,count(*) fc from 下载表 group by id) b on a.id = b.id order by a.名称
------解决方案--------------------
if object_id('[上传表]') is not null drop table [上传表]
go
create table [上传表] (id int,名称 nvarchar(18),上传路径 nvarchar(70),上传者 int,文档类型 nvarchar(6))
insert into [上传表]
select 22,'WBS模板.pdf','Manage\file\2012-05-15\17-40-43.pdf',20080962,'pdf' union all
select 23,'5月通讯录.pdf','Manage\file\2012-05-16\08-36-10.pdf',20080962,'pdf' union all
select 24,'香水.pdf','Manage\file\2012-05-16\08-47-10.pdf',20080962,'pdf'
if object_id('[下载表]') is not null drop table [下载表]
go
create table [下载表] (id int,名称 nvarchar(18),时间 datetime,下载者 int)
insert into [下载表]
select 1,'WBS模板.pdf','2012-05-18',20080790 union all
select 2,'WBS模板.pdf','2012-05-18',20080962
select * from [上传表]
select * from [下载表]
SELECT A.id,A.名称,A.上传路径,A.上传者,A.文档类型,COUNT(B.id) AS '下载次数'
FROM [上传表] A
LEFT JOIN [下载表] B ON A.名称 = B.名称
GROUP by A.id,A.名称,A.上传路径,A.上传者,A.文档类型
/*
id 名称 上传路径 上传者 文档类型 下载次数
----------- ------------------ ---------------------------------- ----------- ------ -----------
22 WBS模板.pdf Manage\file\2012-05-15\17-40-43.pdf 20080962 pdf 2
23 5月通讯录.pdf Manage\file\2012-05-16\08-36-10.pdf 20080962 pdf 0
24 香水.pdf Manage\file\2012-05-16\08-47-10.pdf 20080962 pdf 0
(3 row(s) affected)
*/