MySQL Problem zusammenfügen mehrerer Daten

MiD

macht munter
ID: 217060
L
21 April 2006
4.390
243
Hi,

tschuldigung erstmal für den Titel. Mir ist echt kein besserer Titel eingefallen.

Folgendes erstmal zur DB Struktur:
id | user1 | user2
1 | a | b
2 | a | c
3 | a | d
4 | b | c
5 | c | a
6 | c | a

Ich würde jetzt gerne eine Chartliste machen in der Reihenfolge der meist erwähnten User. Egal ob a in user1 oder user2.
Am Ende sollte es in etwa so aussehen

User | Anzahl
a | 5
c | 4
b | 2
d | 1

Leider möchte ich nicht jeweils 2 Abfragen machen mit einem COUNT und dann zusammenknüpfen, sondern am liebsten alles in einer Abfrage einbauen.

Hat jemand dafür bitte eine Lösung? :)
Gruß
 
Fertig:
PHP:
select
  u.user1
    as 'User',
  count(*)
    as Anzahl
from midproblem as m
  join (select user1 from midproblem union select user2 from midproblem)
    as u
    on m.user1 = u.user1 or m.user2 = u.user1
group by u.user1
order by Anzahl desc;
Deine Tabelle heißt midproblem, ansonsten müßte alles klar sein.
 
  • Like
Reaktionen: MiD