Jak opisano w Funkcje i operatory rzutowania :
Typ wyniku może być jedną z następujących wartości:
BINARY[(N)]CHAR[(N)]DATEDATETIMEDECIMAL[(M[,D])]SIGNED [INTEGER]TIMEUNSIGNED [INTEGER]
Dlatego powinieneś użyć:
SELECT CAST(PROD_CODE AS UNSIGNED) FROM PRODUCT