Perdona me olvide.
los campos son de tipo smallint
y el ejemplo que me pones no me sirve porque me realiza la suma de los campos
pero me has dado un idea y ya he conseguido que funcione
Código SQL:
Ver originalSELECT CONVERT(VARCHAR(4),ano) + CONVERT(VARCHAR(2),mes) + CONVERT(VARCHAR(2),dia) , valor, natureza
FROM movimentos
WHERE CONVERT(VARCHAR(4),ano) + CONVERT(VARCHAR(2),mes) + CONVERT(VARCHAR(2),dia) >= '20090101' AND
CONVERT(VARCHAR(4),ano) + CONVERT(VARCHAR(2),mes) + CONVERT(VARCHAR(2),dia) <= '20111230'