Ergebnis 1 bis 6 von 6

Thema: Lösungssuche für eine (für mich) komplizeirte SQL-Abfrage

  1. #1

    Lösungssuche für eine (für mich) komplizeirte SQL-Abfrage

    Hallo

    Ich hätte mal eine Frage, weil ich schon lange nach einer Lösng für ein Problem suche:

    Also, cih habe zwei Tabellen

    Tabelle 1:Kathegorien
    Zwei spalten (ID und Kathegorie)

    tabelle 2bjekte
    drei Spalten (ID, titel und Kathegorie)

    Jetzt will ich die Kathegorien nacheinander ausgeben und dahinter zu jeder Kathegorie das neueste Objkekt (mit der höchsten ID)

    Ansich ist das kein Problem (mit php), alelrdings hätte ich das gerne alles in einer einzelnen SQL-Abfrage.

    Wenn jemand ne Lösung hätte wäre ich dankbar


    cye

    darkpegasus

  2. #2
    hi

    also ich glaube dein Problem lässt sich so nicht lösen. Es dürfte schwierig sein, bereits bei der Abfrage herauszufiltern, welches das aktuelleste Objekt in der Kategorie ist.

    Du könntest entweder alle zur Kategorie gehörenden Objekte abfragen und dann mit mysql_fetch_array oder ähnlichem das Objekt mit der höchsten ID herausfiltern. Oder du fügst in deine SQL-Tabelle einfach eine zusätzliche Spalte ein, die lediglich die Werte 0 und 1 annehmen kann. Das aktuelleste Objekt setzt du dann einfach immer auf 1 und alle anderen auf 0. Allerdings weiß ich nicht, ob das vereinbar ist mit dem, was du sonst noch mit der Tabelle machst.

    Nicht ganz das was du suchst, aber vielleicht hilft es ja weiter.

  3. #3
    ich glaube es gibt einen Befehl JOIN in MySQL der genau das gesuchte macht, wie der anzuwenden ist, davon habe ich kA

  4. #4
    Also in einem einzelnen Query wüsste ich keine Lösung, aber mit zweien is das kein Problem.

    PHP-Code:
    $categories mysql_query("SELECT * FROM categories");
    while(
    $category mysql_fetch_object($categories))
    {
      
    $object mysql_fetch_object(mysql_query("SELECT * FROM objects WHERE cat_id='$category->id' ORDER BY id DESC LIMIT 0, 1"));
      echo 
    $object->title;


  5. #5
    Ok, danke erstmal für eure bemührungen, werd ich mal ausprobieren... (obohl sich das Problem eigentlich aufgelöst hat, da ich die Anzeigen anders gemacht habe, aber schon interessehalber wil ich es mal versuchen.

  6. #6
    Versuchs mal damit (is ungetestet, könnte aber klappen ):
    PHP-Code:
    SELECT a.`Kathegorie`, b.`TitelFROM a `Kathegorien`, `ObjekteGROUP BY b.`KathegorieORDER BY b.`idDESC

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •