Mailinglisten-Archive |
Am Tue, 10 May 2005 11:12:45 +0200 schrieb Michael Donning <donning at informenta.de>: > Hallo Robert, > >> -----Original Message----- >> From: Robert Pleniger [mailto:pleniger at rpdev.at] >> >> In einer Tabelle mit zwei Feldern >> >> `Bezeichnung` VARCHAR(10) >> >> `Anzahl` INTEGER >> >> steht z.B. >> >> 'abc', 2 >> >> 'xyz', 3 >> >> >> >> das Ergebnis der Query sollte das Feld Bezeichnung >> zurückgeben und zwar so oft wie in 'Anzahl' angegeben, also >> >> abc >> >> abc >> >> xyz >> >> xyz >> >> xyz >> >> >> >> Derzeit fehlt mir jeder Lösungsansatz. > > Wenn die Anzahl einen sinnvollen Oberwert hat (z.b. bestimmt kleiner als 1 > Million): > > Dann könntest Du eine Hilfstabelle (zahlen) nehmen mit einem Zähler (zahl). > In der Tabelle hast Du eine einzige Spalte, Autowert, gleichzeitig > (Primär)schlüssel von 1-<Obergrenze>. > > Also > Tab Zahlen > Zahl > 1 > 2 > 3 > .. > > Dann machst Du einen (inner) join auf die Tabelle: > select m.bezeichnung,m.anzahl from mytab m,zahlen z where m.count<=z.zahl Einfach Genial. Hast Du Dir das selbst Ausgedacht? > > > Grüße, > Michael Donning > Danke -- Robert Pleniger -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive