MAX aggregated function will automatically skip null values, so the following query should be fine:
SELECT MAX(c2) FROM tablename WHERE c1 BETWEEN 12 AND 15;
Please see fiddle here. I see your where condition is
WHERE data BETWEEN 12 AND 15
are you sure you are applying the WHERE clause to the correct column? I think you need to change it to:
WHERE c1 BETWEEN 12 AND 15