Sie erhalten das gleiche Ergebnis ohne die führenden Nullen.
Verwenden Sie den Integer-Datentyp, um Integer-Werte zu vergleichen.
Sie können die Werte auch direkt konvertieren, indem Sie cast:
Ihr Beispiel mit Cast:
select if( cast('00160001' as unsigned) between cast('0013001' as unsigned)
and cast('0023000' as unsigned),1,0) as test_a,
if( cast('00200000' as unsigned) between cast('0013001' as unsigned)
and cast('0023000' as unsigned),1,0) as test_b;