用一条SQL完成数据表的行统计
来源:互联网 发布:查看linux 文本编码 编辑:程序博客网 时间:2024/05/21 17:19
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
有数据表:名称 数量 状态
-----------------------
产品A 10 进货
产品A 20 销售
产品B 20 进货 要查询结果为:产品名称 库存数量
-----------------------
产品A -10
产品B 20解决方法一:
SELECT
DISTINCT名称,
(ISNULL((selectSUM(A.数量)from库存表AWHEREA.名称=库存表.名称ANDA.状态='进货'),0)
-
ISNULL((selectSUM(A.数量)from库存表AWHEREA.名称=库存表.名称 ANDA.状态='销售'),0))AS库存数量
FROM
库存表
解决方法二():
SELECT名称,Sum(IIF(状态='进货',1,-1)*数量)as 库存数量From库存表GroupBy名称
解决方法三(Access):
SELECT名称,Sum(IIF(状态='进货',数量,0)-IIF(状态='销货',数量,0))as 库存数量From库存表GroupBy名称
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
作者的一个项目的查询系统需求:有数据表:名称 数量 状态
-----------------------
产品A 10 进货
产品A 20 销售
产品B 20 进货 要查询结果为:产品名称 库存数量
-----------------------
产品A -10
产品B 20解决方法一:
SELECT
DISTINCT名称,
(ISNULL((selectSUM(A.数量)from库存表AWHEREA.名称=库存表.名称ANDA.状态='进货'),0)
-
ISNULL((selectSUM(A.数量)from库存表AWHEREA.名称=库存表.名称 ANDA.状态='销售'),0))AS库存数量
FROM
库存表
解决方法二():
SELECT名称,Sum(IIF(状态='进货',1,-1)*数量)as 库存数量From库存表GroupBy名称
解决方法三(Access):
SELECT名称,Sum(IIF(状态='进货',数量,0)-IIF(状态='销货',数量,0))as 库存数量From库存表GroupBy名称
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 用一条SQL完成数据表的行统计
- 使用DirectShow驱动摄像头
- deleted和inserted是逻辑(概念)表。
- 本人用foxpro写的房屋产权产籍管理系统
- 性能检查指导方案-PartII
- 昨天到安徽宿松一个客户那里搞维护的经验教训
- 用一条SQL完成数据表的行统计
- STOREDPROCEDURES:GOODORBAD(存储过程:好还是坏)
- 数据仓库与企业应用集成(二)
- 数据仓库与企业应用集成(一)
- 如果对字符型编号字段(如1-2)进行排序
- 缩小SQLSERVER日志文件
- 存储过程中建立一个表时出错,为什么?
- 来自巴黎的华人架构师
- [SQL]啊?!查询分析器的BUG?!