[MySQL 3.23.X] select ergebniss feld x nur einmal

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

  • [MySQL 3.23.X] select ergebniss feld x nur einmal

    Hallo

    $beitrag = mysql_query("SELECT * from beitrag LEFT JOIN beitrag_text ON beitrag.bei_id = beitrag_text.bei_id WHERE $like_suche ORDER BY beitrag.order_nr_kat, beitrag.order_nr_the") or die("Fehler - Stichwortsuche Beitrag" . mysql_error());

    Durchsucht zwei Tabellen nach einem Stichwort. Wenn ein Wort in einem Beitrag zwei mal vorkommt, wird der Beitrag auch zwei mal ausgegeben.

    Wie kann ich definieren, dass in der Ausgabe das Feld bei_id aus der Tabelle 'beitrag' immer nur einmal vorkommt. DISTINCT hilft nicht.

    DANKE!
    Gruß Jonnov

  • #2
    * liefert dir alle spalten aller tabellen

    probier mal beitrag.*
    damit solltest du alle spalten der tabelle beitrag bekommen

    und noch besser wäre es meiner meinung nach, wenn du die namen der felder explizit angeben würdest
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Hallo,

      danke für deine Antwort.
      Mit beitrag.* oder aber beitrag.bei_id, beitrag.titel, beitrag.toppic erhalte ich trotzdem Datensätze aus der Tabelle beitrag doppelt ausgegeben.

      Hast Du noch eine Idee???

      Danke und GRuß
      Jonnov

      Kommentar


      • #4
        das distinct hast du verwendet?

        poste mal die abfrage, so wie sie jetzt aussieht
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          select ergebniss feld x nur einmal

          $dbfelder = "beitrag.titel,beitrag.toppic,beitrag.titel_k,toppic_k,beitrag.inhalt,beitrag_text.bei_txt_titel,bei trag_text.bei_txt_inhalt";

          $like_suche = "concat($dbfelder) LIKE '$suche_1'";


          $beitrag = mysql_query("SELECT distinct beitrag.* from beitrag LEFT JOIN beitrag_text ON beitrag.bei_id = beitrag_text.bei_id WHERE $like_suche ORDER BY beitrag.order_nr_kat, beitrag.order_nr_the") or die("Fehler - Stichwortsuche Beitrag<p>" . mysql_error());

          durch distinct und beitrag.* bekomme ich keine doppelten mehr
          Danke!

          Leider wederen nicht alle DBFelder durchsucht.
          $dbfelder sollte doch funktionieren. ODER ?

          jonnov

          Kommentar


          • #6
            hast du dir die abfrage so wie sie der mysql-server bekommt mal ausgeben lassen?

            wie sieht die aus?
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar

            Lädt...
            X