求sql语句 - Delphi / 数据库相关
access表如下:
地点 数量 种类
a 2 甲
a 2 乙
b 2 甲
c 3 甲
c 3 乙
d 5 甲
d 3 甲
d 5 乙
e 1 乙
查询语句1:SELECT 地点,sum(数量) from data group by 地点
结果为:
地点 Expr1001
a 4
b 2
c 6
d 13
e 1
查询语句2:SELECT 地点,sum(数量) from data where 种类="甲"group by 地点
结果为:
地点 Expr1001
a 2
b 2
c 3
d 8
我想要的是,当查询语句是2的时候,得到如下结果:
地点 Expr1001
a 2
b 2
c 3
d 8
e 0
就是说:当用语句2的时候,地点字段的值要全部列出来,
这个Group BY 可能完在不了这个功能,
最好再和所有的地点字段Join一下,
SELECT * from ((SELECT DISTINCT 地点 from data) AS a LEFT JOIN (SELECT 地点,sum(数量) from data where 种类="甲"group by 地点) as b ON a.地点=b.地点)
用 having 来筛选
看错了,你还要显示为0,那么就用case来处理第二列
SELECT 地点,iif(sum(数量),0,0,sum(数量)) from data where 种类="甲"group by 地点
IIf(expr, truepart, falsepart)
IIf 函数的语法包含以下参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。)
参数 说明
expr 必选。要计算的表达式。
truepart 必选。expr 为 True 时返回的值或表达式。
falsepart 必选。expr 为 False 时返回的值或表达式。
说明
由于 IIf 会计算 tru
相关问答:
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jas ......
可能因为工作的原因 接触数据库这块比较少,之前都是做程序这块,数据库这块都有专门的人来做 分工都很明细 所以对数据库这一块完全不了解。前段时间 去面试了几家公司 几乎都是在数据库这块挂掉的 连个简单的SQ ......
具体要求与报酬QQ729851670
771234717
“拼音编程”是什么意思
引用
“拼音编程”是什么意思
1.给一个字可以显示拼音,多音字的话能显示对应的多个拼音
2.对包含多音字的词语智能识别给出拼音。
3.对一段 ......
例子程序见附件,用Delphi 7进行编译
问题代码为
Delphi(Pascal) code:
if Node.ChildNodes <> nil then
begin
for i := 0 to Node.ChildNodes.Count - 1 do
begin
cNode := N ......