Ich habe viele Antworten aus dem, was ich auf dieser Website einschließlich der "Wo nicht existiert" -Klausel gesehen habe versucht. Hier ist die ursprüngliche SQL ich mitMysql versucht, Zeilen einzufügen und doppelte Einträge mit vielen Problemen zu ignorieren
INSERT INTO tbl_Feed
(FeedTypeID, CustomerID, Name, Code, Color, Icon, FeedTypeSortOrder, IsUsingEmailAddress, IsActive)
select DISTINCT
3, c.CustomerID, "Unattached Image", "Unattached Image", "0x0093D0", "offline_01.png", COALESCE((select MAX(FeedTypeSortOrder) as FeedTypeSortOrderMax from tbl_Feed where FeedTypeID = 3 and customerid=c.CustomerID) + 1, 1), 0, 1
from tbl_Customer c
join tbl_Feed f on f.customerid = c.customerid
where f.code != "Unattached Image"
befasse Wenn ich das zweimal laufen, es tritt eine weitere Zeile für „Unattached Bild“. Ich will, dass es nur Tabellen beitritt, die diesen Wert noch nicht haben ... Ich dachte sicher, die where-Klausel zu where not exist(select name from tbl_Feed where name != "Unattached Image")
zu ändern, aber das aktualisierte 0 Zeilen. Bitte beraten.
was passiert, wenn Sie Anführungszeichen ändern '" 'zu Apostrophe' ' ' – cha
gleiche Problem, Zeilen doesnt ignorieren, die bereits existieren – gallly