UPDATE mit WHERE über 2 Tabellen

Tja, hab ich noch ein fehler eingebaut. Das ist gut für dich zum üben und zu verstehen was das ding macht.

Wo gibts wohl ein Feld, das nicht eindeutig zugewiesen ist, weil es in beiden Quellen vorkommt?
 
Nee, Entschuldigung, ich finde das nicht, habe mir jetzt schon den Kopf zerbrochen. Eventuell products_id?
 
Zuletzt bearbeitet:
genau
Code:
UPDATE
	products_to_categories
SET 	
	categories_id=267
WHERE 
	products_id IN (
		SELECT 
			product_id
		FROM
			(SELECT 
				d.products_id, 
				d.products_name
			FROM 
				products_description d,
				(SELECT 
					products_id 
				FROM 
					products_to_categories 
				WHERE 
					categories_id=283) c
			WHERE
				d.products_id OR c.products_id)
		WHERE
			products_name LIKE '%3/4%')

Genau, im SELECT-Teil de 2ten Blocks sollte c.products_id oder d.products_id heissen. Ob c oder d ist egal, da es ja in beiden Tabellen drin ist
 
Das war es aber nicht, gleicher Fehler.
Oben steht auch noch ein product_id drin, das ist natürlich auch products_id.
 
Tja, da ich deine DB nicht besitze, kann ich dir nur meine Trockenübungen abgeben. Ob es funktioniert oder nicht, kann ich nicht testen.

Also, ersetze nun produkts_id durch produkt_id und versuche es.
 
Nach der Fehlermeldung googlen (Sprache=deutsch), ersten Eintrag anwählen und das SQl dementsprechend anpassen...

Code:
UPDATE
	products_to_categories
SET 	
	categories_id=267
WHERE 
	products_id IN (
		SELECT 
			p.products_id
		FROM
			(SELECT 
				d.products_id, 
				d.products_name
			FROM 
				products_description d,
				(SELECT 
					products_id 
				FROM 
					products_to_categories 
				WHERE 
					categories_id=283) c
			WHERE
				d.products_id OR c.products_id) p
		WHERE
			p.products_name LIKE '%3/4%')
 
Zurück