mySQL: Mindestens 2 mal
Nuke
- datenbank
0 Ilja0 nuke
0 King^Lully
Hi, habe folgendes problem
möchte eine datenbankabfrage machen und alle user ausgeben, aber mindestens zwei weibliche.
Beispiel:
SELECT name, geschlecht FROM users
Jetzt die Frage:
ich möchte mindestens zwei mal ein ergebnis darunter haben, wo geschlecht=w ist.
Geht sowas ohne dass ich eine zweite Abfrage machen muss?
yo,
möchte eine datenbankabfrage machen und alle user ausgeben, aber mindestens zwei weibliche.
diese anforderung macht wenig sinn, wenn du sowieso alle user haben willst, dann sind auch alle weiblichen dabei, die es in der tabelle user gibt. man kann ja nicht mehr user ausgeben, als letzlich drinne sind.
es sei den, du meinst den fall, dass du "künstlich" welche hinzugeben willst, wenn es nicht ausreichend im datenbestand gibt.
Ilja
Nicht, wenn ich LIMIT 0,5 habe und darin min. 2 weibliche vorkommen sollen.
möchte eine datenbankabfrage machen und alle user ausgeben, aber mindestens zwei weibliche.
Beispiel:
SELECT name, geschlecht FROM users
Jetzt die Frage:
ich möchte mindestens zwei mal ein ergebnis darunter haben, wo geschlecht=w ist.
Geht sowas ohne dass ich eine zweite Abfrage machen muss?
Du willst also alle Datensätze, dabei aber sicherstellen, dass genug kommen, die ein bestimmtes Kriterium erfüllen ("geschlecht=w").
Um das zu sicherzustellen, müssen auch genügend das Kriterium erfüllende Datensätze vorhanden sein.
Dafür böte sich ein
SELECT
geschlecht,
count(*)
FROM
users
GROUP BY
geschlecht
vorab an und erst dann ggf die Hauptabfrage absenden.