Uma dúvida ao montar uma view
27/02/2011
0
Uso Sql Server 2008. Precisava montar uma view, que me trouxesse informações, baseada na seguinte regra:
Regra de negócio:
Se o ano for menor que 1940, então 100 - Legibilidade deve ser igual ou maior que 82.
Se o ano for entre 1941 e 1950, então 100 - Legibilidade deve ser igual ou maior que 85.
Se o ano for entre 1951 e 1960, então 100 - Legibilidade deve ser igual ou maior que 87.
Minha dificultade é em montar isso, pois eu tenho um campo chamado Legibilidade(Decimal), e nesses casos deve manter isso. Não conseguir fazer com um case, tipo assim:
select img.data,img.edicao,
Case when year(data) <= 1940 then
....
Aqui já não sei. pois tentei uma subquery e não funcionou
end map
from.....
Pensei em fazer um blco anônimo, com cursor e etc, mas não sei se funcionaria um em Relatório dentro do delphi. Tô com dúvidas de montar isso. Eu não preciso mostrar no retório as informações de que se ano <...., isso não precisa, eu tenho apenas que validar isso para imprimir o relatório.
O 100 - Legibilidade, vai me dar o percentual de legibilidade. Esse numero aí é pequeno, sempre entre 3 ~ 15, nunca menos ou mais, dependendo do ano da mídia.
Bem é mais ou menos isso. QQuer coisa, eu posto m ais informações.
Regra de negócio:
Se o ano for menor que 1940, então 100 - Legibilidade deve ser igual ou maior que 82.
Se o ano for entre 1941 e 1950, então 100 - Legibilidade deve ser igual ou maior que 85.
Se o ano for entre 1951 e 1960, então 100 - Legibilidade deve ser igual ou maior que 87.
Minha dificultade é em montar isso, pois eu tenho um campo chamado Legibilidade(Decimal), e nesses casos deve manter isso. Não conseguir fazer com um case, tipo assim:
select img.data,img.edicao,
Case when year(data) <= 1940 then
....
Aqui já não sei. pois tentei uma subquery e não funcionou
end map
from.....
Pensei em fazer um blco anônimo, com cursor e etc, mas não sei se funcionaria um em Relatório dentro do delphi. Tô com dúvidas de montar isso. Eu não preciso mostrar no retório as informações de que se ano <...., isso não precisa, eu tenho apenas que validar isso para imprimir o relatório.
O 100 - Legibilidade, vai me dar o percentual de legibilidade. Esse numero aí é pequeno, sempre entre 3 ~ 15, nunca menos ou mais, dependendo do ano da mídia.
Bem é mais ou menos isso. QQuer coisa, eu posto m ais informações.
Pjava
Curtir tópico
+ 0
Responder
Posts
28/02/2011
Emerson Nascimento
select * from tabela
where
(year(data) <= 1940 and (100 - legibilidade) >= 82)
or (year(data) between 1941 and 1950 and (100 - legibilidade) >= 85)
or (year(data) between 1951 and 1960 and (100 - legibilidade) >= 87)
where
(year(data) <= 1940 and (100 - legibilidade) >= 82)
or (year(data) between 1941 and 1950 and (100 - legibilidade) >= 85)
or (year(data) between 1951 and 1960 and (100 - legibilidade) >= 87)
Responder
Clique aqui para fazer login e interagir na Comunidade :)