MYSQL INSERT INTO alle Datensätze aus Tab x deren Werte nicht in Tab y enthalten sind
Hallo,
ich habe eine Tabelle "equipment" und eine Tabelle "revoked_eq" welche über "eq_id" miteinander verknüpft sind. Über einen Button möchte ich alle "eq_id" aus "equipment" die nicht in "revoked_id" enthalten sind, in "revoked_id" einfügen. Über eine zusätzliche Dropdown-Box wird eine "bouquet_id" angegeben welche die zweite Spalte in "revoked_id" darstellt. Diese erhalte ich aus dem $_POST array und speichere den Wert in $bouquet. Somit haben alle Datensätze deren "eq_id" nicht in "revoked_eq" vorkamen dieselbe "bouquet_id".
Leider funktioniert meine SQL-Abfrage so nicht, wobei mein SUBSELECT alleinstehend einwandfrei funktioniert und mir wirklich alle "eq_id" angibt welche nicht in "revoked_eq" enthalten sind.
Als Fehlermeldung erhalte ich: #1242 - Subquery returns more than 1 row
Ich nehme mal an, dass das Problem darin liegt, dass mir mein SUBSELECT mehrere Treffer liefert während meine Variable $bouquet eine Zeile zurückgibt...
Über eine Hilfestellung wäre ich sehr dankbar!
Mit freundlichen Grüßen
Cappaja
Hallo,
ich habe eine Tabelle "equipment" und eine Tabelle "revoked_eq" welche über "eq_id" miteinander verknüpft sind. Über einen Button möchte ich alle "eq_id" aus "equipment" die nicht in "revoked_id" enthalten sind, in "revoked_id" einfügen. Über eine zusätzliche Dropdown-Box wird eine "bouquet_id" angegeben welche die zweite Spalte in "revoked_id" darstellt. Diese erhalte ich aus dem $_POST array und speichere den Wert in $bouquet. Somit haben alle Datensätze deren "eq_id" nicht in "revoked_eq" vorkamen dieselbe "bouquet_id".
Leider funktioniert meine SQL-Abfrage so nicht, wobei mein SUBSELECT alleinstehend einwandfrei funktioniert und mir wirklich alle "eq_id" angibt welche nicht in "revoked_eq" enthalten sind.
Als Fehlermeldung erhalte ich: #1242 - Subquery returns more than 1 row
Code:
INSERT INTO `revoked_eq`
VALUES($bouquet,
(SELECT e.`eq_id`
FROM `equipment` e
LEFT JOIN `revoked_eq` r
USING ( `eq_id` )
WHERE r.`eq_id` IS NULL))
Ich nehme mal an, dass das Problem darin liegt, dass mir mein SUBSELECT mehrere Treffer liefert während meine Variable $bouquet eine Zeile zurückgibt...
Über eine Hilfestellung wäre ich sehr dankbar!
Mit freundlichen Grüßen
Cappaja
Zuletzt bearbeitet: