当前位置:首页 » 编程语言 » 报表统计sql
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

报表统计sql

发布时间: 2022-08-13 01:16:53

1. 用sql统计数据库报表

select 村名,sum(case when 内容分类='家庭矛盾' then 1 end) 家庭矛盾, sum(case when 内容分类='自然灾害、环境保护' then 1 end) 自然灾害、环境保护, sum(case when 内容分类='经济' then 1 end) 经济, sum(case when 处理情况='已办结' then 1 end) 已办结,sum(case when 处理情况='正在办结' then 1 end) 正在办结,sum(case when 处理情况='未办结' then 1 end) 未办结 from table group by 村名

2. SQL 统计报表

-- create sample table
create table tab1 (id int, output_style char(1), amount int, output_date date);

insert into tab1 values(1,'D',1000,'2009-11-12');
insert into tab1 values(2,'C',1000,'2009-11-12');
insert into tab1 values(3,'G',1000,'2009-12-12');
insert into tab1 values(4,'Z',1000,'2010-01-01');
insert into tab1 values(5,'D',1300,'2009-11-12');
insert into tab1 values(6,'C',1400,'2009-11-12');
insert into tab1 values(7,'G',2000,'2009-12-12');
insert into tab1 values(8,'Z',1000,'2010-01-01');

-- query
select concat(year(output_date), month(output_date)) as yearmonth,
sum(case when output_style='C' then amount else 0 end) as C_Amount,
sum(case when output_style='G' then amount else 0 end) as G_Amount,
sum(case when output_style='Z' then amount else 0 end) as Z_Amount,
sum(case when output_style='D' then amount else 0 end) as D_Amount from tab1 group by output_date

3. 自定义报表能不能实现Sql的查询统计功能

在系统中,增加一个报表管理模块。
以配置的形式来进行,报表开发。
比如。grid++报表工具。
每一张报表,对应一个sql,这样的话,就可以使用配置的方式。
---报表名字,报表ID,sql语句(或者是存储过程),报表路径--相信在展现报表的时候,一个公用的底层和公用的页面。
就比如fusionchart,只是xml和flash不同而已。
完全可以配置到数据库,用ID来区分不同的报表。
这样写你后期如果有这种业务需求的话,就可以很快的开发。

4. sqlserver 统计报表的 sql语句怎么写


--动态语句
declare@sqlvarchar(8000)
select@sql=isnull(@sql+'],[','')+NAMEfromT_CSDN_ONEgroupbyNAME
set@sql='['+@sql+']'
EXEC('select*from(select*fromT_CSDN_ONE)apivot(SUM(ISNULL(MONERY,0)forNAMEin('+@sql+'))b')

5. sql 月统计报表 按日显示

select a.yd,cardmoney,c.fillmoney,d.fillmoney as fillmoney1,replacemoney,returnmoney,chargemoney from (
select '1' as yd union select '2' union select '3' union
select '5' union select '6' union select '7' union
select '8' union select '9' union select '10' union
select '11' union select '12') a
left join
(select month(addtime)as yd,sum(cardmoney)as cardmoney from Card where year(addtime) = '2009' group by month(addtime)) b
on a.yd=b.yd
left join
(select month(filldate)as yd,sum(fillmoney)as fillmoney from CardFillDate where year(filldate) = '2009' group by month(filldate)) c
on a.yd=c.yd
left join
(select month(filldate)as yd,sum(fillmoney)as fillmoney from CardFill where year(filldate) = '2009' group by month(filldate)) d
on a.yd=d.yd
left join
(select month(replacedate)as yd,sum(replacemoney)as replacemoney from CardReplace where year(replacedate) = '2009' group by month(replacedate)) e
on a.yd=e.yd
left join
(select month(recycledate)as yd,sum(returnmoney)as returnmoney from CardRecycle where year(recycledate) = '2009' group by month(recycledate)) f
on a.yd=f.yd
left join
(select month(outdate)as yd,sum(chargemoney)as chargemoney from Mainsavetable where year(outdate) = '2009' group by month(outdate)) g
on a.yd=g.yd order by cast(a.yd as int)

6. 这个销售统计报表T-SQL怎么写

SELECTFirstName客户,销售总数量-ISNULL(退货总数量,0)数量,售价总额-ISNULL(退货售价总额,0)销售总额,销售成本总额-ISNULL(退货成本总额,0)成本总额,
售价总额-退货售价总额-(销售成本总额-退货成本总额)利润总额
FROMCustomerKJOIN
(SELECTCustomerId,SUM(Quantity)销售总数量,SUM(Quantity*Price)售价总额,SUM(CostPrice*Quantity)销售成本总额
.SellFormId=M.SellFormId
WHEREChecked=1ANDDeleted=0ANDSellDateBETWEEN'20150101'AND'20150120'
GROUPBYCustomerId)XONK.CustomerID=X.CustomerID
LEFTJOIN
(SELECTCustomerId,SUM(Quantity)退货总数量,SUM(Quantity*Price)退货售价总额,SUM(CostPrice*Quantity)退货成本总额
.SellReturnFormId=M.SellReturnFormId
WHEREChecked=1ANDSellReturnItemClass=0ANDReturnDateBETWEEN'20150101'AND'20150120'
GROUPBYCustomerId)TONK.CustomerID=T.CustomerID

7. 求助一个统计报表的SQL语句

SELECT SUM(入库重量) AS 库存, 货物品种,货物规格,货主,入库日期
FROM 表A
ORDER BY 货物品种,货物规格,货主,入库日期

你得详细说一下你要的“入库表重量之和”是多长时间之内的。上面我写的是每天的入库重量之和

8. SQL 数量 统计报表

改成这样试试: SELECT dbo.HY_JBDA.姓名, dbo.HY_JBDA.年龄, dbo.HY_JBDA.户籍, dbo.HY_JBDA.职业,
dbo.HY_JBDA.渠道名称, dbo.HY_JBDA.居住区域 AS 居住地址,
dbo.HY_JBDA.客户类别, dbo.HY_JBDA.会员卡类别 AS 客户等级,
CASE dbo.HY_JBDA.会员卡类别
WHEN '普通卡' THEN 1
WHEN '成功卡' THEN 1
WHEN '卓越卡' THEN 1
WHEN '金卡' THEN 1
WHEN '钻石卡' THEN 1
ELSE '0'
END AS 数量,
dbo.HY_JBDA.家庭结构, dbo.HY_JBDA.车型, dbo.HY_JBDA.会员卡类别
FROM dbo.HY_JBDA INNER JOIN
dbo.HY_DJQK ON dbo.HY_JBDA.会员编号 = dbo.HY_DJQK.会员编号
where dbo.HY_DJQK.登记日期 between '2007-01-01' and '2010-01-01'

9. SQL 报表统计 总计小计

select 月份,电费,管理费,杂费,餐费,其他,总计 from
(select cast((month(DATE)) as char(2)) as 月份一,cast((month(DATE))as char(2)) as 月份,
sum(case when OUTPUT_STYTLE='电费' then AMOUNT else 0 end) as 电费,
sum(case when OUTPUT_STYTLE='管理费' then AMOUNT else 0 end) as 管理费,
sum(case when OUTPUT_STYTLE='杂费' then AMOUNT else 0 end) as 杂费,
sum(case when OUTPUT_STYTLE='餐费' then AMOUNT else 0 end) as 餐费,
sum(case when OUTPUT_STYTLE='其他' then AMOUNT else 0 end) as 其他,
sum(case when ID>0 then AMOUNT else 0 end ) as 总计
from DB_DAILY_OUTPUT where(year(DATE)='"+year+"') group by (month(DATE))
union
select '13' as 月份一,'合计' as 月份,
sum(case when OUTPUT_STYTLE='电费' then AMOUNT else 0 end) as 电费,
sum(case when OUTPUT_STYTLE='管理费' then AMOUNT else 0 end) as 管理费,
sum(case when OUTPUT_STYTLE='杂费' then AMOUNT else 0 end) as 杂费,
sum(case when OUTPUT_STYTLE='餐费' then AMOUNT else 0 end) as 餐费,
sum(case when OUTPUT_STYTLE='其他' then AMOUNT else 0 end) as 其他,
sum(case when ID>0 then AMOUNT else 0 end ) as 总计
from DB_DAILY_OUTPUT where(year(DATE)='"+year+"') )a
order by 月份一