Вопрос

How can I subtract the sum of a subquery table from another table?

SELECT i.column1 * i.column2 AS Expr1
    , i.column1 * i.column2 - (SELECT SUM(table2.column1) AS Expr1 
                               FROM table2 
                               WHERE (table2.column3 = table1.column3)) AS derivedExpression
FROM table1

Only the derivedExpression in the first row is correct. The rest rows returns null for derivedExpression. For Expr1, everything is fine. Any help?

Это было полезно?

Решение

SELECT i.column1 * i.column2 AS Expr1
    , i.column1 * i.column2 - (SELECT COALESCE(SUM(table2.column1), 0) AS Expr1 
                               FROM table2 
                               WHERE (table2.column3 = table1.column3)) AS derivedExpression
FROM table1
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top