惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

人人都是产品经理
人人都是产品经理
量子位
月光博客
月光博客
罗磊的独立博客
宝玉的分享
宝玉的分享
博客园_首页
酷 壳 – CoolShell
酷 壳 – CoolShell
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
WordPress大学
WordPress大学
博客园 - 叶小钗
博客园 - 聂微东
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
雷峰网
雷峰网
博客园 - 三生石上(FineUI控件)
Jina AI
Jina AI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - Franky
美团技术团队
爱范儿
爱范儿
V
Visual Studio Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Y
Y Combinator Blog

博客园 - powerlc

mobile WareHouse 项目笔记1 moss 与SAP iView web part 整合 一个合格的程序员该做的事情 IT职场健康杀手与应对宝典 (虽然是IT职场,可是对于常上网的ggmm也是很有用的) 常用CASE工具介绍 ZZ 北京知名百货公司宰客内幕 开发工程师人生之路 (推荐) Asp.net中在datagrid中放checkbox控件的全选 - powerlc - 博客园 C#修饰符 c++程序员的常用工具集 10条有益的涉世建议ZZ 算术运算的溢出问题 计算机中的原码、反码和补码 C#的代理和事件 Repeater导出为excel格式 常见算法基础之排序 算法 ZZ 约瑟夫c++ ZZ JavaScript实用的一些技巧 - powerlc - 博客园
用一条SQL完成数据表的行统计
powerlc · 2005-09-08 · via 博客园 - powerlc

有数据表:

名称    数量   状态
-----------------------
产品A    10     进货
产品A    20     销售
产品B    20     进货

要查询结果为:

产品名称   库存数量
-----------------------
产品A        -10 
产品B         20

解决方法一:
SELECT
DISTINCT 名称,
(ISNULL((select SUM(A.数量) from 库存表 A WHERE A.名称 = 库存表.名称 AND A.状态='进货'), 0)
-
ISNULL((select SUM(A.数量) from 库存表 A WHERE A.名称 = 库存表.名称  AND A.状态='销售'), 0)) AS 库存数量
FROM
库存表

解决方法二(Access):
SELECT 名称,Sum(IIF(状态='进货',1,-1) * 数量) as  库存数量 From 库存表 Group By 名称

解决方法三(Access):

SELECT 名称,Sum(IIF(状态='进货',数量,0)-IIF(状态='销货',数量,0)) as  库存数量 From 库存表 Group By 名称