Ankündigung

Einklappen
Keine Ankündigung bisher.

Ausgabe von mehreren gleichen Daten nur 1x

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • madSoul
    hat ein Thema erstellt Ausgabe von mehreren gleichen Daten nur 1x.

    Ausgabe von mehreren gleichen Daten nur 1x

    Hallo zusammen,

    wieder stehe ich vor einem "Problemchen" ...

    ich habe eine DB die Kategorien enthält. Doch anstatt den Kategorien gleich eine eigene Tabelle zu geben ist eben alles vermischt.

    Jetzt möchte ich aus dieser DB auslesen welche Kategorien es gibt, doch hab ich leider keine Ahnung wie ich das fragen soll !?

    Im Moment hab ich das so gelöst das ich mir alle Kategorien in einem Array speichere und das mit den neuen Datensätzen vergleiche, doch da sollte es doch noch eine bessere Lösung geben, oder ?

    Herzlichen Dank schonmal...

  • Zergling-new
    antwortet
    Siehe Wikipedia: Normalisierung.

    Einen Kommentar schreiben:


  • xabbuh
    antwortet
    Du solltest dir übrigens mal Gedanken über deine Tabellenstruktur machen. So wie du momentan die Kategorie zuordnest, handelst du dir sehr schnell inkonsistente Daten ein, sobald in einem Datensatz der Kategoriename verändert wird, aber "vergessen" wird, den Namen in allen betroffenen Datensätzen anzupassen.
    Beheben kannst du dieses Problem, in dem du die Kateogrien in eine extra Tabelle auslagerst und nur die ID der jeweiligen Kategorie als Fremdschlüssel in deiner Artikeltabelle ablegst.

    Einen Kommentar schreiben:


  • madSoul
    antwortet
    so funzt das bei mir auch endlich !!!!!!!!
    THX @ ALL

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Hm wozu brauchst du noch die ID?

    Code:
    SELECT id, DISTINCT(kategorie) FROM tabelle
    geht auch nicht?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    habs so mal gemacht -->

    PHP-Code:
    <?php
        $sql 
    "SELECT 
                    typ
                FROM
                    artikel
                GROUP BY
                    typ
                ORDER BY
                    typ ASC;"
    ;
        
    $result mysql_query($sql) OR die(mysql_error());
        while (
    $row mysql_fetch_assoc($result)) {
            
    $formtyp strtoupper(substr($row['typ'],0,1)) . substr($row['typ'],1);
            echo 
    $formtyp;
        }
    ?>

    Einen Kommentar schreiben:


  • madSoul
    antwortet
    ok, ich brauche dazu aber auch die id dazu, doch wenn ich distinct(kat,id) schreibe kommt wieder ein mysql_syntax_fehler...

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Hör ma, probier doch einfach aus, was es macht:

    Code:
    // sql
    SELECT DISTINCT(kategorie) FROM tabelle
    Du willst mir erzählen, du kannst dieses Beispiel nicht auf deine DB-Tabelle umschreiben und prüfen, was dabei rauskommt?

    Einen Kommentar schreiben:


  • madSoul
    antwortet
    Ich bin die ganze Zeit am Googeln was ich mit DISTINCT und unique_array anfangen kann, doch wenn man sich das selber beibringen muss ist das auch nicht ohne...

    Solltest eh besser Dir selber helfen...

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Willst das Problem offenbar nicht wirklich/selbst lösen.
    Dann kann ich dir auch nicht helfen.

    Einen Kommentar schreiben:


  • madSoul
    antwortet
    Ich versteh nur Bahnhof... ?!

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Dann habe ich dir die Lösung bereits gepostet.

    Einen Kommentar schreiben:


  • madSoul
    antwortet
    Ok, hab mich wohl etwas verwirrend ausgedrückt...

    ich habe eine DB

    id | kat | produkt | preis

    11 | glas | designer trinkglas | 29,99
    12 | holz | piraten holzbein | 19,99
    13 | glas | fensterscheibe | 14,99
    14 | obst | verfaulter Apfel | 0,99
    15 | holz | Holzauge | 4,99

    in der 2ten Spalte hab ich nun die Kategorien.
    Jetzt sollen mir die vorhandenen Kategorien ausgegeben werden,
    aber nicht x mal, sondern immer nur 1 mal pro Kat...

    So, hoffe das ist besser so !

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Verstehe dein Problem nicht, unter anderem weil "ist eben alles vermischt" und "neuen Datensätzen vergleiche"? Was willst du damit sagen? Bitte informativ sein!

    Vielleicht hilft dir aber
    Code:
    // sql
    SELECT DISTINCT(kategorie) FROM tabelle
    
    // php
    $arr = array_unique($arr); // du hast ja offenbar schon den Array mit allen Kategorien ^^

    Einen Kommentar schreiben:

Lädt...
X