Tenho a seguinte situação:
Tabela com o nome ‘teste’
Campos: nome(varchar,20), ano(inteiro)
Valores:
nome ano
nome1 2010
nome1 2011
nome3 2012
Pretendo na consulta criada no sriptcase, colocar uma nova coluna chamada ‘valor’ que terá os valores ‘certo’ ou ‘errado’ conforme o valor de ano passado por parãmetro seja igual ao campo ‘ano’.
Fiz assim no SQL:
SELECT
nome,
ano,
IF(ano = “[ano]”,“certo”,“errado”) as valor
FROM
teste
o resultado (colocando no parãmetro quando inicia a aplicação: 2012) é o seguinte:
nome ano valor
nome1 2010 errado
nome1 2011 errado
nome3 2012 errado
Como se pode verificar, o último registo deveria dar ‘certo’ mas colocou ‘errado’.
Mas o comando SQL funciona se em vez de colocar o parãmetro, colocar um valor para o ano no IF:
SELECT
nome,
ano,
IF(ano = “2012”,“certo”,“errado”) as valor
FROM
teste
o resultado é o seguinte:
nome ano valor
nome1 2010 errado
nome1 2011 errado
nome3 2012 certo
Assim já deu certo porque coloquei “2012” em vez de [ano] no IF.
Mas eu pretendo colocar a variável global [ano].
O que estou fazendo de errado? Alguém sabe?
Um abraço