Der Grund, warum nichts passiert, ist, weil die Datenbank den Join nicht ausführen kann, den Sie ihm vorschreiben. Wenn nat_title
länger als 3 Zeichen ist (wie Sie in Ihrem Kommentar gesagt haben), dann gibt es nichts hinzuzufügen.
Beispiel: Nehmen wir an, nat_title
enthält den Wert "Dies ist ein Beispiel" und ld_naty
enthält nur "Thi". Du versuchst nun, "This is an example" bei "Thi" beizutreten, was offensichtlich nicht funktioniert, weil es nicht das gleiche ist.
Sie brauchen etwas wie folgt aus:
UPDATE lead_db l1
INNER JOIN option_nat n1 on n1.nat_title LIKE CONCAT(LEFT(l1.ld_naty,3), '%')
SET l1.ld_ncode = n1.nat_id
aber sicher sein, dass dies wirklich ist, was Sie wollen. Denn jetzt "Dies ist ein Beispiel" würde auf alles, die mit den Buchstaben "Thi" beginnt (und es ist nicht einmal Groß-und Kleinschreibung, so "tHi" wäre eine gültige Join als auch) verbunden werden.
Ist 'nat_title' EXAKT gleich den 3 Zeichen der anderen Zeichenfolge? Zeigen Sie uns Beispiele ihrer Werte – SubjectDelta
Nein 'nat_title' ist länger als 3. Aber ich brauche nur die ersten 3 Zeichen von' ld_naty' zu suchen. – Wilf