2017-04-24 2 views
-2

Ich versuche, eine SQL-Anweisung zu schreiben, die die Anzahl einer Verkettung mehrerer Spalten zurückgibt aber alle Zeilen in der ursprünglichen Tabelle behält.SQL-Aggregatfunktion und alle Zeilen beibehalten

Zum Beispiel habe ich eine Tabelle, die eine Kombination von Kunden und Artikeln auflistet. Es kann mehrere Zeilen für eine bestimmte Kombination Kunde + Artikel geben. Ich hätte gerne eine Spalte, die mir die Anzahl der Kombination Kunde + Artikel in der gesamten Tabelle jeder Zeile anzeigt.

Also wenn Customer1 + Item1 Kombination 10 mal in meiner Tabelle auftritt, möchte ich diese neue Spalte 10 anzeigen, aber ich möchte immer noch die resultierende Tabelle alle 10 der ursprünglichen Zeilen haben.

+2

löschen Frage. Stellen Sie dann eine andere Frage und geben Sie Beispieldaten, gewünschte Ergebnisse und alle Versuche an, das Problem zu lösen. Kennzeichnen Sie die Frage auch mit der von Ihnen verwendeten Datenbank. –

+0

der SQL Dialekt alleine würde schon helfen ... – DarkSquirrel42

Antwort

0

was eine Unterabfrage mit ...

in T-SQL, die wie folgt aussehen könnte (da Sie kein Dialekt ... angegeben haben):

select 
    customer, 
    item, 
    (
    select 
     count(*) 
    from table i 
    where 
     i.customer = o.customer and i.item = o.item 
) 
from table o 
Verwandte Themen