SQL 语句取合计数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 语句取合计数相关的知识,希望对你有一定的参考价值。

一个表里有两个字段,其中有一个字段的内容有重复的
比如:
客户1 职员1
客户2 职员1
客户3 职员2
客户1 职员2
客户2 职员1
现在我想输出这样的结果:
客户 职员1 职员2 合计
客户1 1 1 2
客户2 2 0 2
客户3 0 1 1
3个 3 2 5
最后一行第一列取客户总数,剩下三列取上面几行数的数字之和,该怎么写sql语句呢?
3个 3 2 5
最后一行第一列取客户总数,剩下三列取上面几行数的数字之和.例如3=1(第一行)+2(第二行)

你第一个表,两个字段不都重复了吗,
主键是什么

估计一下你的表:
pKey 客户 职员
1 .. ..
2 .. ..
3 .. ..

用 UNION 来做。

select A.客户, count(A.职员)as 职员1,count(B.职员)as 职员2,count(A.职员)+count(B.职员)as 合计
from 表名 A,表名(同一个表) B
where A.职员=职员1 and B.职员=职员2
group by 客户
UNION
select count(客户),sum(职员1),sum(职员2),sum(合计)
from 表名 group by 客户

UNION 作用是 把最后一行接表上。
参考技术A SELECT * FROM tablename GROUP BY customer 参考技术B 通过编程手段来实现吧
先将查询数据放入datatable,然后再循环datatable取合计
参考技术C 写得不太清楚,本来看懂了的,后面又不知道是什么意思 参考技术D 楼主的要求
select
名称,材质,sum(数量)
from

group
by
名称,材质
SQL
的数值计算函数
sum()
汇总
AVG()
取平均数
MAD()
找最大数
MIN()
找最小数
count()
统计个数

SQL语句取最后100条数据

在查询分析器里用SQL语句取一个表里的最后100条数据,请帮帮忙,谢谢!

select top 100 * from 表名 order by 列名 desc (升序asc 降序desc)

你表肯定是根据哪列排序的吧,你要最后100个就根据情况用“升序”还是“降序”排列吧
select是查询的意思
top是指上面的
select top 100意思就是查询前100
order by 列名 desc 意思就是根据列名行降序排列

大概就这样吧 你自己理解下 希望有帮助
参考技术A 首先要确认表的排序是要据那一列

select *
from (select *,row_number()over(order by ID desc) as row from table)t
where row<=100
参考技术B select top 100 * from table order by id desc

正解……
参考技术C select top 100 * from table order by id desc 参考技术D select top 100 * from table order by id desc

以上是关于SQL 语句取合计数的主要内容,如果未能解决你的问题,请参考以下文章

sql中group by 是啥意思啊?请教谢谢

SQL语句如何取前10条,10-30条记录?

使用一条 SQL 语句的结果在另一条语句中进行计数

基于星期几返回计数或空值的 Netezza SQL 语句

Access VBA中的计数SQL语句

在 SQL Server 的 SQL 语句的一部分中防止记录计数