+ Antworten
Ergebnis 1 bis 5 von 5

Thema: Left Join

  1. #1
    Neu an Board
    Registriert seit
    01.06.2005
    Ort
    Dortmund
    Alter
    42
    Beiträge
    26
    Bedankte sich
    3
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard Left Join

    Hallo zusammen,
    mit LEFT JOIN habe ich so meine Probleme bekomme das einfach nicht hin.

    Hier sind meine beiden Querys alleine:
    1. Query
    PHP-Code:
    $query 'SELECT * FROM #__switchbase '
                    
    .'WHERE ( '.$cat.' ) AND published = "1" ORDER BY name ASC'
    2.Query
    PHP-Code:
    $query 'SELECT avg(user_rating) FROM #__switchbase_ratings '
                    
    .'WHERE rateid = '.$rows->id.''
    Mein Versuch war nun so

    PHP-Code:
    $query 'SELECT h.*,c.avg(user_rating) FROM #__switchbase AS h'
                    
    .'LEFT JOIN #__switchbase_ratings AS c ON c.rateid = h.id'
                    
    .'WHERE h.'.$cat.' AND h.published = "1" ORDER BY h.name ASC'
    jedoch bekomme ich keine Daten ausgegeben.
    Grund er findet keine. Alleine geht es nur in ein Query macht er nichts.

    Meine Frage ist nun, wie muss ich das aufbauen, damit dieses klappt.

    Grüße

    Olly

  2. #2
    Gehört zum Inventar Avatar von deejey
    Registriert seit
    22.04.2006
    Ort
    HH
    Beiträge
    9.309
    Bedankte sich
    509
    Erhielt 1.791 Danksagungen
    in 1.583 Beiträgen

    Standard

    hm, das eine hat Zeilen zum Ergebnis, das andere eine Aggregatfunktion (avg), weiß garnicht ob das geht ... naja mal sehen, was ist denn in $cat?
    mach mal
    PHP-Code:
    echo $cat
    Kein Support über PM; Ignoriermodus aktiv bei "dringend", "schnell", "eilt", denn: Zeit ist relativ

  3. #3
    Neu an Board
    Registriert seit
    01.06.2005
    Ort
    Dortmund
    Alter
    42
    Beiträge
    26
    Bedankte sich
    3
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    $cat ist dieses

    PHP-Code:
                if ($_GET[switchdatabase_viewcat]      == 'abc' ) {$cat '( cat="A" OR cat="B" OR cat="C" )';}
                 elseif (
    $_GET[switchdatabase_viewcat] == 'def' ) {$cat '( cat="D" OR cat="E" OR cat="F" )';}
                 elseif (
    $_GET[switchdatabase_viewcat] == 'ghi' ) {$cat '( cat="G" OR cat="H" OR cat="I" )';}
                 elseif (
    $_GET[switchdatabase_viewcat] == 'jkl' ) {$cat '( cat="J" OR cat="K" OR cat="L" )';}
                 elseif (
    $_GET[switchdatabase_viewcat] == 'mno' ) {$cat '( cat="M" OR cat="N" OR cat="O" )';}
                 elseif (
    $_GET[switchdatabase_viewcat] == 'pqr' ) {$cat '( cat="P" OR cat="Q" OR cat="R" )';}
                 elseif (
    $_GET[switchdatabase_viewcat] == 'stu' ) {$cat '( cat="S" OR cat="T" OR cat="U" )';}
                 elseif (
    $_GET[switchdatabase_viewcat] == 'vwx' ) {$cat '( cat="V" OR cat="W" OR cat="X" )';}
                 elseif (
    $_GET[switchdatabase_viewcat] == 'yz' )  {$cat '( cat="Y" OR cat="Z" )';} 

  4. #4
    Gehört zum Inventar Avatar von deejey
    Registriert seit
    22.04.2006
    Ort
    HH
    Beiträge
    9.309
    Bedankte sich
    509
    Erhielt 1.791 Danksagungen
    in 1.583 Beiträgen

    Standard

    {$cat = '( cat="D" OR cat="E" OR cat="F" )';}
    ach herrje, dann versuche mal die letzte Zeile statt so
    PHP-Code:
    .'WHERE h.'.$cat.' AND h.published = "1" ORDER BY h.name ASC'
    so
    PHP-Code:
    .'WHERE '.$cat.' AND h.published = "1" ORDER BY h.name ASC'
    also alias "h." weg, ich hoffe, alias-Angabe ist bei mysql nicht Pflicht ...
    Kein Support über PM; Ignoriermodus aktiv bei "dringend", "schnell", "eilt", denn: Zeit ist relativ

  5. #5
    Neu an Board
    Registriert seit
    01.06.2005
    Ort
    Dortmund
    Alter
    42
    Beiträge
    26
    Bedankte sich
    3
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Ich habe jetzt mal alle Möglichkeiten durchgespielt nichts geht. Wie deejey schon schrieb denke ich auch das es mit einer Aggregatfunktion (avg) nicht klappt.
    Wäre ja auch zu schön gewesen.

+ Antworten

Lesezeichen

Berechtigungen

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