Postgres, erro de consulta: ERROR: operator does not exist: charactervaring = bigint?

Aug 21 2020

Estou tentando executar esta consulta:

select *
from my_table
where column_one=${myValue}

Recebo o seguinte erro no Datagrip:

[42883] ERROR: operator does not exist: character varying = bigint Hint: No operator matches the given name and argument types. You might need to add explicit type casts.

Agora, encontrei esta pergunta e posso corrigir o erro colocando uma string como esta:

select *
from my_table
where column_one='123'

O que eu preciso é de uma forma de passar o '123' como parâmetro. Normalmente faço isso ${myValue}e funciona, mas não tenho certeza de como manter minha variável lá como uma entrada para que possa executar consultas dinâmicas no código e deixar o Postgres entender que desejo passar uma string e não um número.

Alguma sugestão?

Aqui está uma captura de tela de como estou colocando o valor do parâmetro no DataGrip ...:

Ok, então, eu apenas tentei colocar aspas no campo de entrada de parâmetros de controle de dados para que as respostas de myValue @ Thirumal funcionassem. Não sabia que tinha que cotar o valor para funcionar. Isto é o que parece:

Respostas

1 Thirumal Aug 21 2020 at 12:37

Digite elenco ${myValue}usando SQL Standard,

cast(${myValue} AS varchar)

ou usando a sintaxe do Postgres:

${myValue}::varchar