ich Daten wie folgt:SQL Server SQL-Anweisung - Aktualisieren Datensatz
Ich brauche zu aktualisieren Matching_id
und Matching_Type
von column id, region, company, dept, subdept and amountsepend
verwenden. Die Logik lautet:
Sum AmountSepend by Region, Company, Dept and SubDept
. Wenn der Summenbetrag 0 ist, dann ist Matching_Type "Match" und Matching_id ist die Kombination der ID für den übereinstimmenden Datensatz, ansonsten "Not Match" und Matching_id ist die ID. ** SUMME bedeutet die Gesamtsumme aller Datensätze für dieselben Kriterien, unabhängig davon, ob der Betrag positiv oder negativ ist. Ein weiteres wichtiges Kriterium ist, ob die Transaktion ein einzelner Datensatz ist, was bedeutet, dass die Gesamtzahl durch Gruppieren nach Region, Firma, Abteilung und Unterabteilung 1 ist. Dann stimmt der Übereinstimmungstyp nicht überein und Matching_UID ist ID, unabhängig davon, ob AmountSend 0 oder positiv/negativ ist Wert. Beispiel id 8.
Im Folgenden finden Sie die Ausgabe:
Hier ist die Tabelle und Datenskript
CREATE TABLE [dbo].[StackoverflowQuest](
[id] [int] NOT NULL,
[Region] [varchar](50) NULL,
[Company] [varchar](50) NULL,
[Dept] [varchar](50) NULL,
[SubDept] [varchar](50) NULL,
[AmountSepend] [float] NULL,
[Matching_id] [varchar](100) NULL,
[Matching_Type] [varchar](100) NULL
) ON [PRIMARY]
Wie konnte ich ein solches Ergebnis erreicht? Irgendwelche Hilfe/Hinweis würde schätzen
sind Sie noch auf der Suche nach einer Lösung für diese? – andrews