phpbar.de logo

Mailinglisten-Archive

Re: ZUVIELE NUMMERN
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ZUVIELE NUMMERN



Sorry, ich muss Matthias natürlich recht geben (erst denken, dann
schreiben...)

Aber falls die Nummern unbedingt in einer Ergebnismenge stehen sollen,
gibts natürlich noch folgende Lösung:

select  nummer, name, telefonnummer, 1 as ARG              
from mitarbeiter left  join telefon on nummer = mi_nummer  
  union all                                                
select  nummer, name, faxnummer , 2 as ARG                 
from mitarbeiter left  join fax on nummer = mi_nummer      
 order by nummer, ARG                             

(Es tut, ich habs ausprobiert).
Alle Datensätze, in denen ARG = 1 ist, enthalten Telefonnummern,
alle Datensätze, in denen ARG = 2 ist, enthalten Faxnummern

Das Ergebnis sieht wie folgt aus:
....+....1....+....2....+....3....+....4....+....5....+..  
NUMMER   NAME        NR                              ARG   
     0   huber       0130144770                        1   
     0   huber       0774410310                        1   
     0   huber       99999992222222                    2   
     0   huber       22222229999999                    2   
********   Datenende   ********                            

Beim Auswerten im Client können so erst alle Telefonnummern und dann
alle Faxnummern ausgelesen werden.


Gruß Rüdiger


Matthias Urlichs wrote:
> 
> Hi,
> 
> Ruediger Weiss:
> > Sollte mit left Join und distinct funktionieren
> >
> Leider nein. "distinct" arbeitet immer auf der gesamten Zeile,
> und die sind ja sowieso schon alle unterschiedlich.
> 
> > select distinct nummer, name, telefon, faxnummer
> > from mitarbeiter left join telefon on nummer = mi_nummer
> > left join fax on telefon.mi_nummer = fax.mi_nummer
> >
> Wenn ein Mitarbeiter je zwei Nummern hat, liefert das da oben immer noch
> vier Zeilen.  :-(
> 
> --
> Matthias Urlichs  |  noris network GmbH   |   smurf_(at)_noris.de  |  ICQ: 20193661
> 
> ---
> *** Abmelden von dieser Mailingliste funktioniert per E-Mail
> *** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe

-- 
I N T E R M E D I A T E GmbH&Co.
System- und Beratungshaus fuer eBusiness

Durlacher Allee 95              t +49 (0)721.98644-50
76137 Karlsruhe                 f +49 (0)721.98644-99
http://www.intermediate.de  

PS. Intermediate ist mit einem eigenen Team bei der beruehmten
Oldtimer-Rallye 'La Carrera Panamericana' in Mexiko vertreten.
Info: http://www.lacarrera.de

---
*** Abmelden von dieser Mailingliste funktioniert per E-Mail
*** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive