Moin
Hallo,
ich frage im Augenblick so meine mysql Datenbank ab:
$sql = "select id,nr,name,kat FROM duma";
Bei der Ausgabe in einer while Schleife, frage ich da noch mit
if ($ausgabe['kat']==1) $ausgabe['kat']='Stadt';
> > elseif($ausgabe['kat']==2) $ausgabe['kat']='Stadtteil';
etc...
.......................... 1 - Stadt 2 - Stadtteil 3 - Ort 4 - Markt 5 - Gemeinde 6 - Weiler
...........................
ab bevor ich diese entdlich ausgebe. Kann ich meine
"if, elseif"
Abfrage nicht schon in meine SELCT Abfrage packen.Im Prinzip ja. Das Zauberwort heißt JOIN. Du legst eine zweite Tabelle an, die nur die zwei Spalten 'kat' und 'klartext' hat, und füllst sie mit genau den sechs Paaren, die du oben aufgezählt hast.
Eine Möglichkeit... es geht aber auch anders... Im MySQL kann man mit CASE arbeiten oder IF arbeiten....
z.B.:
SELECT id,nr,name,CASE kat
WHEN 1 THEN 'Stadt'
WHEN 2 THEN 'Stadtteil'
WHEN 3 THEN 'Ort'
WHEN 4 THEN 'Markt'
WHEN 5 THEN 'Gemeinde'
WHEN 6 THEN 'Weiler'
ELSE 'unbekannt'
END kat FROM duma
Besser ist natürlich die Namen der Kategorien in eine eigene Tabelle zu bringen und dann via Kreuzprodukt oder eben auch JOIN zusammen zu bringen angenommen deine Tabelle für die Kategorien heißt 'kategorie' und hat die Felder id und name. Dann könntes so aussehen:
SELECT duma.id, nr, name, duma.kat, kategorie.name
FROM duma, kategorie WHERE katategorie.id = duma.kat
Gruß Bobby
-> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <- ### Henry L. Mencken ### -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <- ### Viktor Frankl ### ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)