select temp1.局编号,temp1.读数 - temp2.读数
from temp1 , temp2
where temp1.局编号 = temp2.局编号

解决方案 »

  1.   

    select a.局编号,a.读数1-b.读数2 [读数差]
    from 
    (
       select 局编号,sum(读数) 读数1 from temp1 group by 局编号
    ) a
    inner join 
    (
       select 局编号,sum(读数) 读数2 from temp2 group by 局编号
    ) b
    on a.局编号=b.局编号
      

  2.   

    --还是多个啊?select isnull(m.局编号, n.局编号) 局编号 , isnull(m.读数 , 0) - isnull(n.读数,0) 读数差
    from
    (select 局编号,sum(读数) 读数 from temp1 group by 局编号) m
    full join
    (select 局编号,sum(读数) 读数 from temp2 group by 局编号) n
    on m.局编号 = n.局编号
      

  3.   


    create table temp1(序号 int, 编码 varchar(15), 局编号 varchar(15), 地址 varchar(10),读表日期 datetime,读数 float)insert into temp1 values(1,'2000130784','DDZ034348','R2幢1002房','2007-12-1',1234.50)
    insert into temp1 values(2,'2000130784','DDZ035389','R2幢1003房','2007-12-2',2598.49)
    create table temp2(序号 int, 编码 varchar(15), 局编号 varchar(15), 地址 varchar(10),读表日期 datetime,读数 float)insert into temp2 values(1,'2000130784','DDZ034348','R2幢1002房','2008-02-01',2312.50)
    insert into temp2 values(2,'2000130784','DDZ035389','R2幢1003房','2008-02-01',3212.49)
    select a.局编号 ,读数差值=sum(a.读数)-sum(b.读数) from temp1 a inner join temp2 b on a.局编号=b.局编号 group by a.局编号局编号             读数差值
    --------------- ----------------------
    DDZ034348       -1078
    DDZ035389       -614(2 行受影响)
      

  4.   

    select temp1.编码 as 台区编码,temp1.局编号 as 局编号, temp2.读数-temp1.读数 as 差
    from temp1 , temp2
    where temp1.局编号 = temp2.局编号
    我这样写  然后提示  对数据类型而言运算符无效。运算符为 subtract,类型为 nvarchar。  应该改那个为怎么样的类型?
      

  5.   

    select a.局编号 ,读数差值=sum(a.读数)-sum(b.读数) from temp1 a inner join temp2 b on a.局编号=b.局编号 group by a.局编号局编号             读数差值
    --------------- ----------------------
    DDZ034348       -1078
    DDZ035389       -614(2 行受影响)
    出现这个  服务器: 消息 409,级别 16,状态 2,行 1
    sum or average aggregate 运算不能以 nvarchar 数据类型作为参数。
    服务器: 消息 409,级别 16,状态 1,行 1
    sum or average aggregate 运算不能以 nvarchar 数据类型作为参数。
    服务器: 消息 403,级别 16,状态 1,行 1
    对数据类型而言运算符无效。运算符为 subtract,类型为 nvarchar。
    我的类型全部是  nvarchar   应该改下那个地方的  数据类型?