Muszę uzyskać sumę dwóch pól znajdujących się w tym samym wierszu i wprowadzić tę liczbę w polu na końcu tego samego wiersza.
To jest mój kod.
Sum(tbl1.fld1 + tbl1.fld2) AS [Total]
Czy do tego służy funkcja SUMA, czy też można użyć funkcji SUMA tylko do uzyskania sumy z kolumny?
Dzięki
Spróbuj wykonać następujące czynności:
SELECT *, (FieldA + FieldB) AS Sum FROM Table
źródło
SUMA służy do sumowania wartości w kolumnie dla wielu wierszy. Możesz po prostu dodać swoje kolumny:
select tblExportVertexCompliance.TotalDaysOnIncivek + tblExportVertexCompliance.IncivekDaysOtherSource AS [Total Days on Incivek]
źródło
ID VALUE1 VALUE2 =================== 1 1 2 1 2 2 2 3 4 2 4 5 select ID, (coalesce(VALUE1 ,0) + coalesce(VALUE2 ,0) as Total from TableName
źródło
Ponieważ moje punkty reputacji są mniejsze niż 50, nie mogłem komentować ani głosować na odpowiedź E Codera powyżej. To najlepszy sposób, aby to zrobić, więc nie musisz używać grupy przez, ponieważ miałem podobny problem.
Wykonując
SUM((coalesce(VALUE1 ,0)) + (coalesce(VALUE2 ,0)))
jako Suma, uzyskasz żądaną liczbę, ale także pozbędziesz się jakiegokolwiek błędu związanego z niewykonaniem Grupowania według. To było moje zapytanie i dało mi całkowitą liczbę i łączną kwotę dla każdego dealera, a następnie podał mi sumę częściową dotyczącą jakości i ryzykownych pożyczek dealerskich.SELECT DISTINCT STEP1.DEALER_NBR ,COUNT(*) AS DLR_TOT_CNT ,SUM((COALESCE(DLR_QLTY,0))+(COALESCE(DLR_RISKY,0))) AS DLR_TOT_AMT ,COUNT(STEP1.DLR_QLTY) AS DLR_QLTY_CNT ,SUM(STEP1.DLR_QLTY) AS DLR_QLTY_AMT ,COUNT(STEP1.DLR_RISKY) AS DLR_RISKY_CNT ,SUM(STEP1.DLR_RISKY) AS DLR_RISKY_AMT FROM STEP1 WHERE DLR_QLTY IS NOT NULL OR DLR_RISKY IS NOT NULL GROUP BY STEP1.DEALER_NBR
źródło
Funkcja sum pobiera tylko sumę kolumny. Aby zsumować dwie wartości z różnych kolumn, zamień wartości na int i dodaj je za pomocą + -Operator
Select (convert(int, col1)+convert(int, col2)) as summed from tbl1
Mam nadzieję, że to pomoże.
źródło
Przypomnienie o dodawaniu kolumn. Jeśli jedna z wartości jest równa NULL, suma tych kolumn staje się NULL. Dlatego niektóre plakaty zalecają łączenie się z drugim parametrem równym 0
Wiem, że to był starszy post, ale chciałem to dodać dla kompletności.
źródło
Jeśli chcesz dodać dwie kolumny razem, wystarczy je dodać. Następnie otrzymasz sumę tych dwóch kolumn dla każdego wiersza zwróconego przez zapytanie.
To, co robi twój kod, to dodanie dwóch kolumn do siebie, a następnie uzyskanie sumy sum. To zadziała, ale może nie być tym, co próbujesz osiągnąć.
źródło