我尝试以下MySQL查询来“覆盖”/替换表中的空/错项,但它不起作用。我收到一个错误:
错误代码:1054。“字段列表”中的未知列'T2.Produktbezeichnung'
有人可以直接看错吗?
UPDATE Bestellung_Bestelldetails AS T1
INNER JOIN
(SELECT Bestellnummer,
Artikelnummer,
Produktkategorie,
`Hersteller/Marke`,
MAX(Produktbezeichnung),
MAX(`Verkaufspreis des Artikels`),
MAX(`Rabatt auf dem Artikel`),
MAX(`Einkaufspreis des Artikels`),
`Bestellte Menge des Artikels`,
`Bezahlte Menge des Artikels`,
MAX(`Versandte Menge des Artikels`),
MAX(`Zurückgesandte Menge des Artikels`),
`Verkaufsstatus des Artikels`,
`Shop`
FROM Bestellung_Bestelldetails GROUP BY Bestellnummer) AS T2
ON T1.Bestellnummer=T2.Bestellnummer
SET T1.Produktbezeichnung=T2.Produktbezeichnung,
T1.`Verkaufspreis des Artikels`=T2.`Verkaufspreis des Artikels`,
T1.`Rabatt auf dem Artikel`=T2.`Rabatt auf dem Artikel`,
T1.`Einkaufspreis des Artikels`=T2.`Einkaufspreis des Artikels`,
T1.`Einkaufspreis des Artikels`=T2.`Einkaufspreis des Artikels`,
T1.`Versandte Menge des Artikels`=T2.`Versandte Menge des Artikels`,
T1.`Zurückgesandte Menge des Artikels`=T2.`Zurückgesandte Menge des Artikels`
WHERE T1.`Verkaufspreis des Artikels` IS NULL;
感谢您的支持!
答案 0 :(得分:0)
您应该为最大列
提供正确的别名 UPDATE Bestellung_Bestelldetails AS T1
INNER JOIN
(SELECT Bestellnummer,
Artikelnummer,
Produktkategorie,
`Hersteller/Marke`,
MAX(Produktbezeichnung) AS Produktbezeichnung ,
MAX(`Verkaufspreis des Artikels`) AS `Verkaufspreis des Artikels`,
MAX(`Rabatt auf dem Artikel`) AS `Rabatt auf dem Artikel`,
MAX(`Einkaufspreis des Artikels`) AS `Einkaufspreis des Artikels` ,
`Bestellte Menge des Artikels`,
`Bezahlte Menge des Artikels`,
MAX(`Versandte Menge des Artikels`) AS `Versandte Menge des Artikels`,
MAX(`Zurückgesandte Menge des Artikels`) AS `Zurückgesandte Menge des Artikels`,
`Verkaufsstatus des Artikels`,
`Shop`
FROM Bestellung_Bestelldetails GROUP BY Bestellnummer) AS T2
ON T1.Bestellnummer=T2.Bestellnummer
SET T1.Produktbezeichnung=T2.Produktbezeichnung,
T1.`Verkaufspreis des Artikels`=T2.`Verkaufspreis des Artikels`,
T1.`Rabatt auf dem Artikel`=T2.`Rabatt auf dem Artikel`,
T1.`Einkaufspreis des Artikels`=T2.`Einkaufspreis des Artikels`,
T1.`Einkaufspreis des Artikels`=T2.`Einkaufspreis des Artikels`,
T1.`Versandte Menge des Artikels`=T2.`Versandte Menge des Artikels`,
T1.`Zurückgesandte Menge des Artikels`=T2.`Zurückgesandte Menge des Artikels`
WHERE T1.`Verkaufspreis des Artikels` IS NULL;