| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY 
共有 1108 人关注过本帖
标题:怎样实现多表使用COUNT()函数???
收藏  订阅  推荐  打印 
lingchen
Rank: 2
等级:注册会员
帖子:49
积分:574
注册:2006-5-7
怎样实现多表使用COUNT()函数???

比如说,我有两张存放相同数据信息的表:A

编号        姓名    数量
9011    胡家斌    5
9024    吴桂敏    241
9025    梁伟杰    348
9026    刘丽芬    318

B:
编号       姓名      数量
9017    郑文亮    79
9020    李志成    160
9024    吴桂敏    270
9025    梁伟杰    111
9026    刘丽芬    275
9027    钟键兴    348
9028    李春映    293
9038    刘潘川    330
9039    陈杰武    184
我要将这两张表做一个汇总的统计出那个人那个编号,总的数据量是多少,,,,要显示这两张表的所有人和总的数量比如说
C:
编号     姓名        数量
9026    刘丽芬      593


请问这样的SQL语句怎样写可以实现呢?请教各位高手!
搜索更多相关主题的帖子: COUNT  刘丽芬  函数  SQL  数量  
2008-1-7 20:34
purana
Rank: 12Rank: 12Rank: 12
来自:广东-广州
等级:版主
威望:66
帖子:6040
积分:61390
注册:2005-6-17

create table ta(编号 int,姓名 nvarchar(10),数量 int)
insert into ta select 9011,    '胡家斌'  ,  5
insert into ta select 9024 ,   '吴桂敏'  ,  241
insert into ta select 9025  ,  '梁伟杰' ,   348
insert into ta select 9026   , '刘丽芬',    318

create table tb(编号 int,姓名 nvarchar(10),数量 int)
insert into tb select 9017,    '郑文亮',    79
insert into tb select 9020 ,   '李志成',    160
insert into tb select 9024  ,  '吴桂敏',    270
insert into tb select 9025   , '梁伟杰',    111
insert into tb select 9026    ,'刘丽芬',    275
insert into tb select 9027    ,'钟键兴',    348
insert into tb select 9028    ,'李春映',    293
insert into tb select 9038    ,'刘潘川',    330
insert into tb select 9039    ,'陈杰武',    184

select 编号,姓名,sum(数量) 数量
from
(
    select 编号,姓名,数量 from ta
    union all
    select 编号,姓名,数量 from tb
) a
group by 编号,姓名
order by 编号

drop table ta,tb

/*
编号          姓名         数量         
----------- ---------- -----------
9011        胡家斌        5
9017        郑文亮        79
9020        李志成        160
9024        吴桂敏        511
9025        梁伟杰        459
9026        刘丽芬        593
9027        钟键兴        348
9028        李春映        293
9038        刘潘川        330
9039        陈杰武        184

(所影响的行数为 10 行)
*/

我的msn: myfend@hotmail.com
2008-1-7 21:57
provoke
Rank: 12Rank: 12Rank: 12
等级:版主
威望:4
帖子:159
积分:1910
注册:2007-6-14


select A.编号,A.姓名,数量=count(A.数量)+count(B.数量)
from A,B
where A.编号=B.编号

建立临时表就同有必要了

爱我至爱,至死不渝!
2008-1-7 23:00
lingchen
Rank: 2
等级:注册会员
帖子:49
积分:574
注册:2006-5-7

好的!谢谢两位了!!!
2008-1-8 14:43
jznhljg
Rank: 1
等级:新手上路
帖子:7
积分:182
注册:2008-3-4

我很想问下purana版主....你的那个CREATE 和INSERT 语句全是自己手打一遍进去..??我在论坛上看到很多小题目.都是嫌麻烦,没建表测试想法...所以十分想知道你是怎么做的?有别的快捷办法??
2008-7-24 01:26
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.047697 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved