MySQL - Select only numeric values from varchar column
SELECT *
FROM mixedvalues
WHERE concat('',value * 1) = value;
Reference: Detect if value is number in MySQL
SELECT *
FROM mixedvalues
WHERE value REGEXP '^[0-9]+$';
You were close :
SELECT *
FROM mixedvalues
WHERE value > 0;
SQLFiddle
SELECT * FROM mixedvalues
WHERE value > 0
ORDER BY CAST(value as SIGNED INTEGER) ASC