SQL Sum Function bei nvarchar Werten Konvertierung

Das erste Cast wandelt den Nvarchar Wert aus Lo.Kosten in einen Float.
Das zweite Cast wandelt den Float Wert aus Lo.Kosten in einen Decimal Wert.
Die Replace Function wandelt die „,“ in „.“ ab.
Die Sum Function summiert den Wert auf. 

select sum(CAST(CAST(REPLACE(Lo.Kosten, ‚,‘, ‚.‘) AS float) AS decimal(6, 2))) from lohnberechnung as lo

SQL Test Datev Ausgangsrechnungen

In den anhängenden Controllings befinden sich die Inhalte, die Individuell bei Ausgangsrechnungen in die Datenfelder Buchungstext, Beleg1, Beleg2, Kost1 und Kost2 über SQL-Scripte geschrieben werden können. Ausserdem wird das Leistungsdatum, Länderkennzeichen und die Debitorennummer mit übertragen. Häufig reicht dieses Controlling schon aus um Fehler bei der Übergabe zu analysieren.

[download id=“609″]

SQL Anweisung Punkt und Strich aus Zeichenkette entfernen

SQL Anweisung um Zeichen aus einer Zeichenkette zu entfernen.

replace(replace(projnr,‘-‚,‘ ‚),‘.‘,‘ ‚)

Bindestrich und Unterstrich werden aus der Zeichenkette entfernen.

SELECT REPLACE(REPLACE(REPLACE(REPLACE(kstktr, ‚P‘, “),‘ ‚,“),‘.‘, “),‘-‚,“) FROM rebBuchung

Aus dem Feld KSTKTR werden die Zeichen P| Leerzeichen|.|-| entfernt

SQL Beispiel um aus einer 1:N Tabelle die jeweils höchste Nr der Detailtabelle zu ziehen

–Holt sich die Netto Angebotssumme aus dem letzten (höchste Angebotsnr) zum Projekt

select ANR, BRUTTOWERT-USTWERT as Netto, PROJEKTNR from
(
SELECT MAX(PA.ANGEBOTSNR) as ANR, PA.ProjNr FROM (select Angebotsnr, Projnr from Angebot A inner JOIN Projekt P ON P.ProjNr = A.PROJEKTNR) as PA GROUP BY PA.ProjNr
) as MAXA inner join Angebot A on A.ANGEBOTSNR = MAXA.ANR

Alternativ könnte man das jetzt über eine Hilfstabelle (projekte) in ein gesondertes Datenfeld schreiben.

declare @projekte table (ANGEBOTSNR nvarchar(max), PROJEKTNR nvarchar(max), netto float)
insert into @projekte
select ANR, PROJEKTNR, BRUTTOWERT-USTWERT as Netto from
(
SELECT MAX(PA.ANGEBOTSNR) as ANR, PA.ProjNr FROM (select Angebotsnr, Projnr from Angebot A inner JOIN Projekt P ON P.ProjNr = A.PROJEKTNR) as PA GROUP BY PA.ProjNr
) as MAXA inner join Angebot A on A.ANGEBOTSNR = MAXA.ANR

Update Projekt set Benutzer9 = PR.netto from Projekt P inner join @projekte PR on PR.PROJEKTNR = P.ProjNr

SQL um Wagenrücklauf (CR) und Zeilenvorschub (LF) zu entfernen

Carriage Return (CR) Wagenrücklauf bedeutet zurückkehren zum Anfang der aktuellen Zeile
CHAR(13)
Line Feed (LF)oder Zeilenvorschub heisst nach unten in die nächste Zeile
CHAR(10)
Beides Zusammen ergibt den (CRLF) Wagenrücklauf Zeilenvorschub
Beispiel:
ProjNr,ProjAdr,Replace(Replace(ProjBezeichnung,CHAR(10),‘ ‚),CHAR(13),‘ ‚) as ProjBez,AuftragsSumme,P.AbtNr
Entfernt alle Wagenrückläufe und Zeilenvorschübe aus einer Zeichenkette