找出两个不同表中两列之和的差异

时间:2016-12-19 13:02:25

标签: sql oracle

我有以下两个表,其中bank为common列:

$.ajax({
        url:url,
        type: 'POST',
        data: JSON.stringify(data),
        dataType: 'json',
        async: false,
        success: function(data, statusText, xhr) {
            console.log("Calling success");
            console.log(arguments);
            console.log(data.status);
        },
        complete: function(data, statusText, xhr) {
            console.log("Calling Complete");
            console.log(arguments);
            console.log(data.status);
        },
        error: function(data, statusText, xhr) {
            console.log("Calling error");
            console.log(arguments);
            console.log(data.status);
        }
    });

我想查询得到table1.amt之和与table2.amount之和的区别。

你能指导一下吗?

3 个答案:

答案 0 :(得分:1)

试试这个:

CancellatioTokenSource cts = new CancellationTokenSource();
//I thought that it's must work, but it don't
var script = CSharpScript.Create(code: someCode);
await script.RunAsync(cancelletionToken: cts.Token);

void button_click()
{
   cts.Cancel()
}

与'我们为每个with t1 as (select sum(amt) s, bank from table1 group by bank), t2 as (select sum(amount) s, vendor from table2 group by vendor) select t1.bank, t1.s - t2.s from ti inner join t2 on (t1.bank = t2.vendor); / bank准备总和然后我们加入它们并减去。问题是您是否需要vendor或某些inner join

答案 1 :(得分:0)

使用子查询,最后根据唯一字段获得差异:

SELECT A.Amount1 - B.Amount2 , bank
FROM 
(
  SELECT SUM(amt) Amount1,bank
  FROM Table1
  GROUP BY bank
)A, 
(
  SELECT SUM(amount) Amount2,vendor
  FROM Table2
  GROUP BY bank
)B
WHERE A.bank = B.vendor

答案 2 :(得分:0)

我不清楚这个问题。 根据您的示例,您可能需要:

SELECT   (SELECT SUM(AMT)
            FROM T1
           WHERE     BANK = '100.00'
                 AND CLRDTE IS NULL)
       - (SELECT SUM(AMOUNT / 100)
            FROM T2
           WHERE     ACCT = '010000'
                 AND CLEARDATE = 0)
  FROM DUAL