Danielmauch: Counter über 2 Spalten

Beitrag lesen

Super vielen Dank ,

aber ich bekomme:
userid_1  userid_2  counter
45        45        4
23        23        4
23        53        1
53        23        1
77        23        1
23        77        1

was is den falsch?

Ach Ingrid,

Diese Ergebnismenge dient uns als Ausgangspunkt für das Gruppieren und Zählen:

Gruppieren auch nicht vergessen!

SELECT

s.user1,
   s.user2,
   COUNT(*) counter
FROM (
    SELECT
       userid_1 user1,
       userid_2 user2
    FROM
       tabelle
    WHERE
       userid_1 < userid_2
    UNION ALL
    SELECT
       userid_2,
       userid_1
    FROM
       tabelle
    WHERE
       userid2 > userid_1
) s                             -- es ist wichtig, der inneren Abfrage einen
                                -- Namen zu geben!
GROUP BY
    s.user1,
    s.user2


>   
> Vergessliche Grüße  
>   
> Vinzenz