Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Pobierz sumę kolumny w ostatnim wierszu, dobra praktyka?

Możesz to łatwo zrobić za pomocą UNION ALL . Kluczem jest to, że master_code pole musi mieć ten sam typ danych co ciąg total więc będziesz musiał go przekonwertować:

select cast(master_code as varchar(10)) master_code, jan
from yourtable
union all
select 'Total', sum(jan)
from yourtable

Zobacz SQL Fiddle z wersją demonstracyjną

Lub możesz użyć GROUP BY with ROLLUP :

select 
  case 
    when master_code is not null 
    then cast(master_code as varchar(10)) else 'total' end master_code, 
  sum(jan) Jan
from yourtable
group by master_code with rollup

Zobacz Skrzypce SQL z wersją demonstracyjną



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Programowe generowanie kodu sql

  2. Jak uzyskać ciąg połączenia z bazy danych

  3. Różnica między Select Unique i Select Distinct

  4. Jak znaleźć ustawienie ANSI_NULLS bazy danych w SQL Server (T-SQL)

  5. Zwróć liczbę wierszy, których dotyczą instrukcje UPDATE