У меня есть несколько таблиц в моей БД. Давайте назовем их table1, table2, table3.
У всех них есть столбец с именем value
.
Мне нужно создать запрос, который будет возвращать одно число, где это число является суммой всех столбцов value
из всех таблиц вместе ...
Я пробовал следующий способ:
SELECT (SELECT SUM(value) FROM table1) + (SELECT SUM(value) FROM table2) + (SELECT SUM(value) FROM table3) as total_sum
Но когда по крайней мере один из внутренних SUM
равен NULL
, все общее значение (total_sum
здесь) равно NULL
, так что это не очень заслуживает доверия.
Когда в определенном внутреннем запросе SUM
нет значения, мне нужно, чтобы оно возвращало 0, чтобы оно не влияло на остальную часть SUM
.
Чтобы было понятнее, допустим, у меня есть следующие 2 таблицы:
TABLE1:
ID | NAME | VALUE
1 Name1 1000
2 Name2 2000
3 Name3 3000
TABLE2:
ID | NAME | VALUE
1 Name1 1500
2 Name2 2500
3 Name3 3500
В конце концов, запрос, который мне нужен, вернет одно значение - 13500, которое является общей суммой всех значений в столбце VALUE
всех таблиц здесь.
Все остальные столбцы не имеют значения для нужного запроса, и мне даже не важна производительность в этом случае.