Ergebnistabelle modifizieren anhand einer Spaltenwert
-
Hallo Zusammen,
Ich habe eine MYSQL Abfrage mit joins von 3 verschieden Tabellen, die mir als
Ergebnis zwei spaltigen tabelle liefert. Als Ergebnis ist:id value
--------------
1 "joe"
2 "satriani"
....zu sehen. Ich moechte anhand Spaltenwert von Zelle "Wiederholung", die in einer
von diesen 3 verschiedenen Tabellen enthalten ist, das ergebnis `wiederholung`
mal duplizieren.Beispiel, id=1 hat Wiederholung-Spaltenwert 3:
id value
---------------
1 "joe"
1 "joe"
1 "joe"
2 "satriani"Kann man sowas in MYSQL Ebene erledigen? Und wenn ja, wuerde ich mich auf ein
Beispiel-Abfrage freuen.Gruss,
-
Ich würde spontan sagen, dass sowas nicht möglich ist.
Ehrlich gesagt seh ich auch keinen Sinn darin.
Wofür brauchst Du das?
-
Du könntest brutal ein Kreuzprodukt verwenden, wenn die Anzahl Wiederholungen begrenzt sind. Sagen wir, maximale Anzahl der Duplikate ist 10:
mal grob die Richtung:CREATE TABLE multiplier (n integer not null);
INSERT INTO multiplier VALUES (1);
INSERT INTO multiplier VALUES (2);
INSERT INTO multiplier VALUES (3);
INSERT INTO multiplier VALUES (4);
INSERT INTO multiplier VALUES (5);
INSERT INTO multiplier VALUES (6);
INSERT INTO multiplier VALUES (7);
INSERT INTO multiplier VALUES (8);
INSERT INTO multiplier VALUES (9);
INSERT INTO multiplier VALUES (10);Jetzt könntest Du "joinen":
select * from
test JOIN multiplier ON n <= anzAber es ist ein dirty hack, ich würde das auch lieber auf App-Ebene lösen.
-
Hallo Zusammen,
Airdamn schrieb:
Ich würde spontan sagen, dass sowas nicht möglich ist.
Ehrlich gesagt seh ich auch keinen Sinn darin.
Wofür brauchst Du das?Ok, sowie ich vermutet habe... Ich weiss nicht wie ihr das sieht aber Sinn
macht es fuer mich wenn angenommen:// From Tabelle Person.
eid Essgewohneit Wiederholung
------------------------------------
30 Eis 2// anstatt
eid Essgewohneit
-------------------
30 Eis
31 EisDadurch wollte ich mir zusaetzlich einen Zeile sparen wobei es nach einer
passenden Abfrage wieder auf zwei Zeile Expandiert wird.
In der App wuerde ich dann die expandierte Tabelle enumerieren sowiezaehler=0 ; schleife akt_zeile==eis wenn zaehler==0 eis fuer fruehstueck ; wenn zaehler==1 eis fuer mittagessen ; zaehler += 1 ; ende schleife
Gruss,
-
Am besten die Daten so abfragen, wie Du schon hast, dann entsprechend in
Deiner App verarbeiten.