Hola,
No sé si te acabo de entender... El select case creo que es correcto para el resultado que esperas, lo que no entiendo es para qué le pones ese where detrás.
Creo que la consulta que buscas es sin el where:
Código SQL:
Ver originalSELECT limiteinferior, porciento, cuotafija, limiteinferior=
CASE
WHEN limiteinferior <=244.8 THEN 0.00
WHEN limiteinferior >=244.81 AND limitesuperior <= 2077.50 THEN 4.65
WHEN limiteinferior >=2077.51 AND limitesuperior <= 3651.00 THEN 121.95
WHEN limiteinferior >=3651.01 AND limitesuperior <= 4244.10 THEN 293.25
WHEN limiteinferior >=4244.11 AND limitesuperior <= 5081.40 THEN 388.05
WHEN limiteinferior >=5081.41 AND limitesuperior <= 10248.45 THEN 538.20
WHEN limiteinferior >=10248.46 AND limitesuperior <= 16153.05 THEN 1641.75
WHEN limiteinferior >=16153.06 THEN 3030.60
END
FROM isr
Como que tienes un where tan exclusivo, es más ya de por sí no obtiene resultados, los valores de tu case no se tienen en cuenta.
Saludos.