可以的。
用一句sql写可能有点麻烦,待我想想。
用多句的话,可以这样,先把这两张表各按照a,b,c分组统计得到两张临时表。然后把这两张要参与统计的字段都组合一张临时表中,然后通过两个字段间的数据运算得到结果。这肯定行的。
用一句sql写可能有点麻烦,待我想想。
用多句的话,可以这样,先把这两张表各按照a,b,c分组统计得到两张临时表。然后把这两张要参与统计的字段都组合一张临时表中,然后通过两个字段间的数据运算得到结果。这肯定行的。
解决方案 »
- access数据库查询问题,提取某个关键字下面不重复的记录,怎么做
- 关于TcxTreeList问题
- 庆祝CONVNET达到预期设计目标,放分
- 能否利用screen.ActiveForm得到窗体的变量呢?
- 招聘delphi程序开发人员——青岛
- 请大侠指导:如何清除所显示的内容?
- 紧急求助:access数据库,delphi下如何能导出到.txt文件
- 用ADO控件访问ODBC上的DB库,为何不能显示汉字?
- 谁能给我一个好的答复?(http://www.csdn.net/expert/topic/169/169121.shtm)
- 问:怎样备份MS SERVER 6.5/7.0数据库,及其他?
- 请问WIN 2K 下的NET SEND * ‘’ 在DELPHI下如何做?
- 请问如何能将windows中自带的图片取出来?用什么软件?
我个人认为 delphi的程序员是最热心和善良的
没试过,不知道对不对,很可能错了
from
(select name1, sum(figure1) as sum_figure1 from table1 group by name1) as a
inner join
(select name2, sum(figure1) as sum_figure2 from table2 group by name2) as b
on a.name1=b.name2
group by a.name1
from
(select name1 as name, sum( figure1) as sum_figure from table1 group by name1
union all
select name2 as name, sum(-figure2) as sum_figure from table2 group by name2) as a
group by name
to renren6250:用楼上的。我的方法相比之下,就差多了
(select name2,sum(figrue2) as sumfigrue from table2 group by name2) b on a.name1=b.name2
SELECT name1 AS name
FROM TABLE1
GROUP BY name1
UNION
SELECT name2 AS name
FROM TABLE2
GROUP BY name2
(SELECT SUM(figrue1)
FROM table1
WHERE name1 = view1.name) -
(SELECT SUM(figrue2)
FROM table2
WHERE name2 = view1.name) AS figrue
FROM view1
GROUP BY name//////////////////
name Expr1
a 10
b 30
c 50
你的方法可以的(+30分)
tO:nononono(null,null)
select name, sum(sum_figure1) as figure
from
(select name1 as name, sum( figure1) as sum_figure from table1 group by name1
union all
select name2 as name, sum(-figure2) as sum_figure from table2 group by name2) as a
group by name
to:tommychim(大脚鸟)
select a.name1,(a.sumfigrue-b.sumfigrue) as sumfigrue from (select name1,sum(figrue1) as sumfigrue from table1 group by name1) a left join
(select name2,sum(figrue2) as sumfigrue from table2 group by name2) b on a.name1=b.name2
这两个sql都不对.但我不知道为什么不对!
有人能解释一下吗?
从数据库中检索行,并允许从一个或多个表中选择一个或多个行或列。虽然 SELECT 语句的完整语法较复杂,但是其主要的子句可归纳如下:SELECT select_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
[ ORDER BY order_expression [ ASC | DESC ] ] 可以在查询之间使用 UNION 运算符,以将查询的结果组合成单个结果集。语法
SELECT statement ::=
< query_expression >
[ ORDER BY { order_by_expression | column_position [ ASC | DESC ] }
[ ,...n ] ]
[ COMPUTE
{ { AVG | COUNT | MAX | MIN | SUM } ( expression ) } [ ,...n ]
[ BY expression [ ,...n ] ]
]
[ FOR { BROWSE | XML { RAW | AUTO | EXPLICIT }
[ , XMLDATA ]
[ , ELEMENTS ]
[ , BINARY base64 ]
}
]
[ OPTION ( < query_hint > [ ,...n ]) ] < query expression > ::=
{ < query specification > | ( < query expression > ) }
[ UNION [ ALL ] < query specification | ( < query expression > ) [...n ] ]< query specification > ::=
SELECT [ ALL | DISTINCT ]
[ { TOP integer | TOP integer PERCENT } [ WITH TIES ] ]
< select_list >
[ INTO new_table ]
[ FROM { < table_source > } [ ,...n ] ]
[ WHERE < search_condition > ]
[ GROUP BY [ ALL ] group_by_expression [ ,...n ]
[ WITH { CUBE | ROLLUP } ]
]
[HAVING <search_condition>]由于 SELECT 语句的复杂性,下面按子句说明详细的语法元素和参数:SELECT 子句
INTO 子句
FROM 子句
WHERE 子句
GROUP BY 子句
HAVING 子句
UNION 运算符
ORDER BY 子句
COMPUTE 子句
FOR 子句
OPTION 子句©1988-2000 Microsoft Corporation。保留所有权利。