1. sql server 分类汇总问题 如何针对单独一列进行汇总
我看你这个不像是需要汇总的,你就按供应商排序,然后显示的时候,程序计算一下数据,每个供应商增加一个合计行就可以了。
2. SQL 把不同列的号码汇总代码怎么写
这个不是汇总,就是字段合并
只是你的SQL是什么数据库(有几十个常用数据库,它们都支持SQL语言的,但字串合并方法不同的),若是SQLServer(注意,SQL与SQLserver是不同的概念)
可用
select 员工姓名,手机号码+'*'+电话号码 可联系号码 from 你的表
3. SQL如何在union all多表查询出结果后再新增列汇总
select 商品名,
sum(期初库存),
sum(入库数),
sum(消耗数),
sum(期初库存) + sum(入库数) - sum(消耗数) as 期末库存
from (select 商品名,
期初库存,
0 as 入库数,
0 as 消耗数
from 期初库存
union all
select 商品名,
0 as 期初库存,
入库数,
0 as 消耗数
from 入库
union all
select 商品名,
0 as 期初库存,
0 as 入库数,
消耗数
from 消耗)
group by 商品名
4. sql 怎么查询出来的 弄一个汇总的列
查询表格中的指定列数据,是select 语句其中一种语法
即:select columna,columnb from table
如表格table有列 a,b,c,d
1、select * from table = select a,b,c,d from table 即显示表格式所以列
2、select a,b from table 即指定显示表格式a,b两列
5. 表末添加一列,用来计算前面各列的总和,SQL语句怎么写
例如添加列total
alter table 表名
add total int
然后将各列的值刷到total列中
update 表名
set total=列1+列2+列3...
where total is not null
6. 求一个多列汇总的sql语句
select[代码],[名称],[规格],[单位],sum([列1数量])as[列1数量],sum([列2数量])as[列2数量]],sum([列3数量])as[列3数量]from[表一]groupby[代码],[名称],[规格],[单位]
7. sql分类汇总如何实现
select片区,客户,产品名称,sum(数量)frombiaogroupby片区,客户,产品名称
8. 就SQL如何将不同行的数据分类汇总到列
将不同行的数据分类汇总到列语句如下:
1)insert into table1 select * from table2
2) select into table 1 select *from table2
这两种写法有什么区别呐,首先insert into这种写法必须有table1列,select则是在access中必须不能存在table1,否则在ado接口中会出现报错的现象。
进行数据库的操作,这里使用的是ado+access进行的数据库的操作,目前来看,ado这种方式还算是比较简单。
9. sql里查询一个字段里的记录的多个类的汇总(几个字段按不同分类的汇总)
--技术要点:行转列
--以下提供SQL SERVER语句
--创建测试环境
create table tab
(
machine int,
sernum varchar(10),
area varchar(2),
PF varchar(1)
)
--制造数据
insert into tab select 462,'16205R3E','AT','P'
insert into tab select 462,'16203H0N','AT','F'
insert into tab select 316,'1620A7WP','AT','S'
insert into tab select 316,'16206CCC','AT','S'
--1. 静态行转列(所谓静态,是指的PF列只有P,F,S这三个值,或者值是固定的某几个值)
select machine,
max(case pf when 'P' then num else 0 end) as P,
max(case pf when 'F' then num else 0 end) as F,
max(case pf when 'S' then num else 0 end) as S
from
(select machine,pf,count(1) as num from tab group by machine,pf
)tb
group by machine
/* 结果集
machine P F S
----------- ----------- ----------- -----------
316 0 0 2
462 1 1 0
(2 row(s) affected)
*/
--2. 动态行转列(相对于静态的概念)
declare @sql varchar(8000)
set @sql = 'select machine as ' + 'machine'
select @sql = @sql + ' , max(case pf when ''' + pf + ''' then num else 0 end) [' + pf + ']'
from (select distinct pf from tab) as a
set @sql = @sql + ' from (select machine,pf,count(1) as num from tab group by machine,pf
)tb group by machine'
exec(@sql)
/* 结果集
machine F P S
----------- ----------- ----------- -----------
316 0 0 2
462 1 1 0
(2 row(s) affected)
*/
--删除环境
drop table tab