Điều này có vẻ hoạt động:
select left( concat('2Ga4la2009','1'), length(concat('2Ga4la2009','1')) - length(convert(convert(reverse(concat('2Ga4la2009','1')),unsigned),char)))
Concat ('myvalue', '1') là để bảo vệ khỏi các số kết thúc bằng 0.
Đảo ngược lật nó xung quanh để số ở phía trước.
Chuyển đổi bên trong thay đổi chuỗi đảo ngược thành một số, làm giảm các ký tự ở cuối.
Chuyển đổi bên ngoài chuyển phần số trở lại ký tự, vì vậy bạn có thể nhận được độ dài.
Bây giờ bạn biết độ dài của phần số và bạn có thể xác định số ký tự của giá trị ban đầu để cắt bằng hàm "left ()".
Xấu xí, nhưng nó hoạt động. :-)