2016-11-23 5 views
-2

Ich habe eine Tabelle mit überlappenden Einträge auf Profitcenter und FinancialAccount erstellt von mehreren Benutzern.Holen Sie eine Spalte Liste, wenn es überlappende Datensätze gibt

ich E-Mail-Benutzer in Submitteby Spalte für ihre überlappende Einträge senden müssen (Say PC1 und CE1 überlappende Aufzeichnungen, sollte ich E-Mail sowohl abc und deg senden und in der E-Mail sowohl die Datensätze angezeigt werden).

Wie kann das gemacht werden? Bitte helfen Sie.

Unten ist der Schnappschuss der Tabelle.

ProfitCenterCode FinancialAccountCode FormName SubmittedBy 
PC1     CE1      SMSG  abc 
PC1     CE1      SMSG  deg 
PC2     CE2     MCB Dynamic iol 
PC2     CE2     N/A   ppp 
PC2     CE2     MCB Dynamic  iol 
PC2     CE2     MCB Dynamic iol 
PC2     CE2     MCB Dynamic iol 
PC2     CE2     MCB Dynamic iol 
+1

Gibt es einen Code, den Sie ausprobiert haben? – Sefe

+0

Mit diesen Beispieltabellendaten, was ist das erwartete Ergebnis? – jarlh

+0

Senden Sie eine E-Mail an abc, deg mit unterem Ergebnissatz. ProfitCenterCode FinancialAccountCode FormName SubmittedBy PC1 CE1 SMSG abc PC1 CE1 SMSG deg – John

Antwort

0

Below Abfrage wird ein Ergebnis wie dieses

ProfitCenterCode, FinancialAccountCode, Formname, SubmittedByList

"PC1", "CE1", "SMSG", "abc, deg"

produzieren
SELECT outer.ProfitCenterCode,outer.FinancialAccountCode,outer.FormName  
    (SELECT STUFF((SELECT ','+inner.SubmittedBy FROM <YOUR-TABLE> inner 
    WHERE inner.ProfitCenterCode = outer.ProfitCenterCode 
    and inner.FinancialAccountCode = outer.FinancialAccountCode 
    and inner.FormName = outer.FormName 
    FOR XML PATH ('')),1,1,"") AS SubmittedByList) 
    FROM <YOUR-TABLE> outer 
    GROUP BY outer.ProfitCenterCode,outer.FinancialAccountCode,outer.FormName 

Wenn Sie als separate Zeilen senden möchten, wie Sie mit diesem Ergebnis Satz erwähnt Sie müssen durch jeden Eintrag iterieren und für die untere Bedingung abfragen und dann das Ergebnis an SubmittedByList senden (Teilwert durch ',' falls erforderlich)

WHERE ProfitCenterCode = <entry-ProfitCenterCode> 
     and FinancialAccountCode = <entry-FinancialAccountCode> 
     and FormName = <entry-FormName> 
Verwandte Themen