COMANDO BETWEEN PARA VARCHAR

KOREIA 05/12/2012 15:47:49
#415495
Boa tarde pessoal,
estou com um problema, e preciso da ajuda de vocês.
preciso fazer uma contagem de registros de clientes bons e ruins, em um determinado intervalo de codigo.
porem o codigo do cliente é varchar(6)
ai eu tentei o seguinte SQL
SELECT COUNT(cli_status) as cli_bom FROM cli001 WHERE cli_status =[ô]SIM[ô] AND cli_reg =[ô]0061[ô] AND cli_regiao =[ô]RSCX ETGR[ô] AND cli_codigo >=0001 AND cli_codigo <=0129;

O between acho q só funcionaria para campo numérico. Estou certo?

Também tentei deixar as aspas no campo código e segue o mesmo problema.

Não é uma opção trocar o capo para inteiro.

Vocês poderiam me ajudar nesta query
grato
DENNERFOX 05/12/2012 15:56:17
#415500
Está certo, o Between é para valores numéricos onde você precisa saber os valores de um ponto ao outro, como por exemplo:

Beteween [ô]2012-01-01[ô] anda [ô]2012-12-30[ô];


Mas seria legal você usar Int para código do cliente ao invés de varchar, pois o varchar você usa quando o campo que você vai usar varia de tamanho, no seu exemplo você determinou o tamanho para exatos 6 caracteres, você pode usar o char de 6 também, fica mais correto.
LLAIA 05/12/2012 16:25:39
#415502
Resposta escolhida
Faz um cast do campo cli_reg na query. Não sabemos qual é o seu banco de dados para indicar o casting correto.
KOREIA 05/12/2012 17:07:38
#415507
Meu banco é mysql.
Resolvi fazendo a conversão no próprio banco com o comando ABS valeu a ajuda.
DENNERFOX 05/12/2012 17:38:19
#415510
Não deixe de fechar o tópico.

fui...
Tópico encerrado , respostas não são mais permitidas