A. sql 查询出来的结果相加相减如何写
把这些列求和后建立新的表 就是子查询了。新表的结构就是下面了
select a.snum1 + b.snum2 + c.snum3 - d.snum4 - e.snum5 from
(select sum(num1) snum1 from table1)a ,
(select sum(num2) snum2 from table2)b ,
(select sum(num3) snum3 from table3)c ,
(select sum(num4) snum4 from table4)d ,
(select sum(num5) snum5 from table5)e
B. sql 查询数据把结果相减
不太明白,你的查询结果不应该放到一起,给个例子吧?
select日期,sum(casewhen销售方式='购买'then金额end)购买,
sum(casewhen销售方式='退货'then金额end)退货,
sum(casewhen销售方式='退货'then-1else1end*金额)实际销售额,营业员
fromB
groupby日期,营业员
C. 在sql的查询的每一行结果中,加入一个根据每行金额加减的字段
select a.*,
(sum(nvl(应付增加,0)) over(order by nvl(应付增加,0)))-
(sum(nvl(应付减少,0)) over(order by nvl(应付减少,0)))
form A ;
其中sum(字段) over(order by 字段),这个是累加求和的。
D. sql 一个表的金额汇总减去另一个表的金额汇总
--因为没有提供2表结构和2表之间的关系,所以用如下的方法最简单
create procere usp_Calculate_SUM
as
begin
declare @MoneyA decimal(10,2),@MoneyB decimal(10,2)
set @MoneyA=0.00
set @MoneyB=0.00
select @MoneyA=SUM(Isnull(金额,0)) from mytableA
select @MoneyB=SUM(Isnull(金额,0)) from mytableB
select @MoneyA-@MoneyB as '结果'
end
return
go
----调用
exec procere usp_Calculate_SUM
----c#中调用
private decimal Get_Calculate_SUM()
{
String sql="exec procere usp_Calculate_SUM";
using(SqlDataAdapter da=new (sql,new SqlConnection(sConn)))
{
DataTable dt=new DataTable();
da.Fill(dt);
if(dt!=null&&dt.Rows.Count>0)
{
return decimal.Parse(dt.Rows[0][0].ToString());
}
return 0.00;
}
}
E. 怎样用sql计算出图中的加减后当条记录的金额
怎样用sql计算出图中的加减后当条记录的金额
类型与金额都为 数字
access:
select sum(金额) -(select sum(金额) from 表 where 类型=1) from 表 where 类型=2
sql2000:
select (sum(case 类型 when 2 then 金额 else 0 end))-(sum(case 类型 when 1 then 金额 else 0 end)) from 表
F. sql 两表相减
应该先聚合,再连接相减。
select SupplierID, ShouldPay - RealPay - ThisPay from
(select SupplierID, sum(ShouldPay) as ShouldPay, SUM(RealPay) as RealPay
from T_InsertStorage
group by SupplierID) as A
left join
(select SupplierID, SUM(ThisPay) as ThisPay
from T_RPManagement
group by SupplierID) as B
on A.SupplierID = B.SupplierID
G. oracle sql 一段时间内的金额加减
select date,money-数值 from table t group by date order by date. 如果是加 那么把语句里面的-号改成+
H. sql money 类型的相减:金额方面
说白了money类型 取出来后 c#编程decimal的
select 金额 from account
C#中 把它放到 decimail 的变量里
逻辑
加减后
update到数据库中
I. sql server两个表的合计值进行相减
PL/SQL块:这样的出来直接只有一个余数
DECLARE
@C1 INT,
@C2 INT,
@C3 INT
BEGIN
select @c1=sum(getmoney) from a
select @c2=sum(paymoney) from b
SET @C3=@C1-@C2
PRINT @C3
END
还可以:这样得出是个无名列
select isnull((select sum(getmoney) from a),0) - isnull((select sum(paymoney) from b),0)
J. SQL数据库字段加减一个定量的实现语句。
这是一个相对复杂的处理,^_^,思路如下:
1.将PAS00000000055956的前3位PAS截取下来
2.将PAS00000000055956中的后14位数字截取下来,并转换成数字,然后与9000000相加
3.将加的结果转换为字符串,并与'0000000000000'进行拼接,
4.对拼接的字符串进行取得最右边的14位,这样保留了原来的PAS00000000055956的后面的14位长度不变
5.对取得的结果与第1步截取下来前3位PAS进行拼接,这样得到了最后的结果,
具体的SQL语句如下:
substring(PAS00000000055956,1,3)+right('0000000000000'+cast((cast(substring(PAS00000000055956,4,14) as int) +9000000) as varchar(14)),14)
呵呵,希望能有帮助,^_^