2016-04-26 31 views
-1

** Tabelle Eingänge **aktualisieren Inner Join zwei Tabellen

(id_inpits, name, quantity_inputs)

Tabelle Ausgänge `(id_outputs, name_outputs, quantity_outputs, quantity_disponible)

, wenn ich die quantity_output aktualisieren möchten, und berechnet die quantity_disponbile

mit dem Wissen: quantity_disponbile = quantity_inputs - quantity_output

Ich habe versucht, mit:

if(!empty($_POST['do'])) { 

    $m_id = $_POST['id_output']; 

    $quantity_outputs = $_POST["quantity_outputs"]; 

    $sql = $db->query("UPDATE outputs AS o INNER JOIN inputs As i ON i.id_input = o.inputs_id SET o.quantity_dispo = 'select quantity_inputs from inputs - FROM (select quantity_outputs from outputs)', o.quantity_outputs = '$quantity_outputs' WHERE o.id_output =' $m_id'"); 

    if(!$sql) { 
     die(mysql_error()); 
    } 
} 
+0

Und was passiert? – bitfiddler

+0

Hallo user3900044, wo ist deine Frage? Grüße! –

Antwort

0

Ein Vorschlag: quantity_disponbile ein berechnetes Feld von beiden Tabelle soll. Teilen Sie die Logik also in zwei Teile: eine Select-Abfrage und eine Update-Abfrage. Die Update-Abfrage müssen nur die quantity_output aktualisieren, und die SELECT-Abfrage kann wie:

select 
    i.quantity_inputs - o.quantity_output = quantity_disponible 
from output o 
    inner join input i on i.id_inpits = o.inputs_id 

ich die Tippfehler ohnehin nicht korrigieren