Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

изчисляване на редова мъдра сума - Sql сървър

Не сте показали опита си за заявка, но вероятно е нещо подобно:

SELECT
  ID, Q1, Q2, Q3, Q4,
  Q1 + Q2 + Q3 + Q4 AS "Total"
FROM MyTable

Ако някой от Q1 , Q2 , Q3 , или Q4 стойностите са нулеви, Q1 + Q2 + Q3 + Q4 ще бъде нула. За да третирате нулите като нула и да получите правилна сума, направете следното вместо това:

SELECT
  ID, Q1, Q2, Q3, Q4,
  COALESCE(Q1,0) + COALESCE(Q2,0) + COALESCE(Q3,0) + COALESCE(Q4,0) AS "Total"
FROM MyTable

COALESCE функция ще върне първата ненулева стойност в списъка.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да възстановя към друга база данни в SQL Server?

  2. Как да обобщим полето за време в SQL Server

  3. Да се ​​генерира ли скрипт за вмъкване за избрани записи?

  4. Използване на OUTPUT след INSERT за получаване на стойност на колона за идентичност в променлива (нетаблична стойност)

  5. RowVersion и производителност