Nou, ik had een soortgelijk probleem met LPAD, het was het afkappen van het nummer naar de lengte van de pad. Volgens https://dev.mysql.com /doc/refman/8.0/en/string-functions.html#function_lpad het is het verwachte resultaat.
Voor zover ik kan zien, noemde niemand een antwoord dat mijn probleem oploste:
LPAD(id, GREATEST(LENGTH(id), 4), "0")
Het werkt zoals verwacht. Vult elke id
in ' is korter dan 4 tekens met 0, en retourneert ongewijzigd id
's die langer zijn dan 4 tekens.
Ik laat mijn antwoord hier achter voor andere mensen, die deze vraag in de toekomst zullen vinden.