JOIN Abfrage

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • JOIN Abfrage

    Hi hab ein Verständnisproblem mit JOIN Abfragen.
    Folgendes möchte ich machen:

    Für jeden angelegten Auftrag gibt es mehrere Charge_Ring Nummer.
    Diese Charge-Ring Nummer werden in der Tabelle "ziehen" abgespeichert.
    Alle diese Charge-Ring werden weiter verarbeitet und in die Tabelle "vergüten" abgespeichert.

    Nun zu meinen Problem:

    Ich möchte mir alle Chargen-Ring Nummern zu einer bestimmten Auftragsnummer anzeigen l
    assen die noch nicht, in der Tabelle "vergüten" angelegt sind.

    PHP Code:
    $sql="SELECT ziehen.Charge_Ring FROM ziehen JOIN vergueten 
    WHERE ziehen.FA_NR='" 
    $_POST['FA_NR']. "' and vergueten.Charge_Ring!=ziehen.Charge_Ring";
            echo 
    $sql;
            
    $result mysql_query ($sql$link);
            echo 
    $result;
            while (
    $row mysql_fetch_array($result))
            echo  
    "Charge:".$row['Charge_Ring']; 

    Blicke leider da gar nicht durch!!! Hoffe auf euch

  • #2
    versuch mal so:
    PHP Code:
    "SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN vergueten 
    on vergueten.Charge_Ring=ziehen.Charge_Ring and
    ziehen.FA_NR='" 
    $_POST['FA_NR']. "' having 
    ISNULL(vergueten.Charge_Ring)"

    Slava
    bituniverse.com

    Comment


    • #3
      PHP Code:
      $sql="SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN vergueten
              on vergueten.Charge_Ring=ziehen.Charge_Ring and
              ziehen.FA_NR='" 
      $_POST['FA_NR']. "' having
              ISNULL(vergueten.Charge_Ring)"
      ;
              echo 
      $sql;
              
      $result mysql_query ($sql$link);
              echo 
      $result;
              while (
      $row mysql_fetch_array($result))
              echo  
      "Charge:".$row['Charge_Ring']; 
      da kommt folgender Fehler:

      SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN
      vergueten on vergueten.Charge_Ring=ziehen.Charge_Ring
      and ziehen.FA_NR='1212' having ISNULL
      (vergueten.Charge_Ring)

      Warning: mysql_fetch_array():
      supplied argument is not a valid MySQL result resource in D:\xampp\htdocs\prob\mubea\
      Vergueteprotokoll\test.php on line 20

      Comment


      • #4
        Benutze mysql_error, verdampft noch mal!
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Comment


        • #5
          mach bitte so:

          PHP Code:
          $result mysql_query ($sql$link) or die(mysql_error()); 
          damit wir Meldung von Mysql sehen können
          Slava
          bituniverse.com

          Comment


          • #6
            PHP Code:
            MySQL-FehlerUnknown column 'vergueten.Charge_Ring' in 'having clause' 

            Wird mir gesagt aber den Spaltenname gibt es in der Tabelle

            Comment


            • #7
              schreibe bitte "and" statt "having"
              und
              statt $row['Charge_Ring']
              $row[0];
              Last edited by Slava; 05-09-2006, 15:05.
              Slava
              bituniverse.com

              Comment


              • #8
                Moin, moin

                PHP Code:
                $sql="SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN 
                        vergueten on vergueten.Charge_Ring=ziehen.Charge_Ring 
                        and ziehen.FA_NR='" 
                $_POST['FA_NR']. "' AND
                        ISNULL(vergueten.Charge_Ring)"
                ;
                     echo 
                $sql;
                        
                $result mysql_query ($sql$link) or die ("MySQL-Fehler: " 
                        
                mysql_error());
                        while (
                $row mysql_fetch_array($result))
                    echo  
                "Charge:".$row['0']; 
                PHP Code:
                SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN
                 vergueten on vergueten
                .Charge_Ring=ziehen.Charge_Ring 
                and ziehen.FA_NR='1212' AND ISNULL(vergueten.Charge_Ring)
                1.Charge:122222
                2.Charge
                :122223
                3.Charge
                :122224 
                So ne Ausgabe erfolgt, aber die verkehrte bis jetzt werden
                alle Chargen aus der Tabelle "ziehen" ausgelesen. Die 1.
                und 2. Charge sind aber bereits in der Tabelle "vergüten"
                schon bearbeitet wurden und sollten daher gar nicht mehr
                mit angezeigt werden.

                Comment


                • #9
                  Ich habe wegen verschiedenen DB- systemen ein Salat in Kopf.
                  letzte versuch.
                  stadt AND vor ISNULL bitte mit WHERE versuchen.
                  Slava
                  bituniverse.com

                  Comment


                  • #10
                    Ich will nicht nerven aber kannst du mir sagen wo ich WHERE einsetzen soll.

                    Hab es so versucht, aber da gibt er mir einen Fehler das die Query leer ist.
                    PHP Code:
                    "SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN
                            vergueten on vergueten.Charge_Ring=ziehen.Charge_Ring
                            AND ziehen.FA_NR='" 
                    $_POST['FA_NR']. "' 
                    WHERE vergueten.Charge_Ring!=ziehen.Charge_Ring"
                    ;
                            echo 
                    $sql;
                            
                    $result mysql_query ($sql$link
                    or die (
                    "MySQL-Fehler: " mysql_error());

                            while (
                    $row mysql_fetch_array($result))
                            echo  
                    "Charge:".$row['0']; 

                    Comment


                    • #11
                      PHP Code:
                      $sql="SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN 
                              vergueten on vergueten.Charge_Ring=ziehen.Charge_Ring 
                              WHERE 
                              ziehen.FA_NR='" 
                      $_POST['FA_NR']. "' AND
                              ISNULL(vergueten.Charge_Ring)"

                      ich glaube

                      Comment


                      • #12
                        PHP Code:
                        $sql="SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN
                                vergueten on vergueten.Charge_Ring=ziehen.Charge_Ring
                                where ziehen.FA_NR='" 
                        $_POST['FA_NR']. "' ";
                                echo 
                        $sql;
                                
                        $result mysql_query ($sql$link
                        or die (
                        "MySQL-Fehler: " mysql_error());

                                while (
                        $row mysql_fetch_array($result))
                                echo  
                        "Charge:".$row['0']; 

                        Ausgabe:


                        PHP Code:
                        SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN 
                        vergueten on vergueten
                        .Charge_Ring=ziehen.Charge_Ring
                         where ziehen
                        .FA_NR='1212' 

                        1.Charge:122222
                        2. Charge
                        :122223 

                        Comment


                        • #13
                          Geht also leider auch nicht er gibt mir immer die Datensätze an die schon in der Tabelle vergüten drin sind.

                          Comment


                          • #14
                            Da fehlt ja auch die Hälfte !! Was ist mit
                            PHP Code:
                            ' AND ISNULL(vergueten.Charge_Ring)"; 
                            s. oben ??
                            ich glaube

                            Comment


                            • #15
                              PHP Code:
                              $sql="SELECT ziehen.Charge_Ring FROM ziehen LEFT JOIN
                                      vergueten on vergueten.Charge_Ring=ziehen.Charge_Ring
                                      where ziehen.FA_NR='" 
                              $_POST['FA_NR']. "' AND ISNULL(vergueten.Charge_Ring)";
                                      echo 
                              $sql;
                                      
                              $result mysql_query ($sql$link
                              or die (
                              "MySQL-Fehler: " mysql_error());

                                      while (
                              $row mysql_fetch_array($result))
                                      echo  
                              "Charge:".$row['0']; 


                              Da gibt er überhaupt keinen Wert aus.

                              Comment

                              Working...
                              X