Duvidas no SQL

Delphi

12/05/2003

Tem algum comando SQL para comparar tipos de dados Numerico e String ????

Ex:

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.Municpio_Cod_Municipio =Municipio.Cod_Municipio
and Mercadoria.Artesao_Cod_Artesao = Artesao.Cod_Artesao
and Mercadoria.Fornecedor_Cod_Fornecedor = ornecedor.Cod_Fornecedor

Onde todos os campos da esquerda foram definidos como Texto e todos os campos da direita como Número. O Banco de Dados é Access.

Obrigada


Marina

Marina

Curtidas 0

Respostas

Marcelo Saviski

Marcelo Saviski

12/05/2003

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.Municpio_Cod_Municipio = CAST (Municipio.Cod_Municipio AS Alpha)
and Mercadoria.Artesao_Cod_Artesao = CAST (Artesao.Cod_Artesao AS Alpha)
and Mercadoria.Fornecedor_Cod_Fornecedor = CAST ( ornecedor.Cod_Fornecedor AS Alpha)


GOSTEI 0
Marina

Marina

12/05/2003

Obrigada pela ajuda, mas, ao executar este comando ele traz a seguinte mensagem de erro : ´erro de sintaxe (operador faltando).


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

12/05/2003

and Mercadoria.Fornecedor_Cod_Fornecedor = CAST ( 
ornecedor.Cod_Fornecedor AS Alpha)


Falta o ´F´ no Fornecedor. Qual é o seu banco de dados?


GOSTEI 0
Marina

Marina

12/05/2003

O Banco é Access.

Este erro está corrigido no programa... A mensagem de erro continua a mesma, Erro de Sintaxe, operador faltando

O select é este:

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
WHERE Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.Municpio_Cod_Municipio = CAST(Municipio.Cod_Municipio AS ALPHA)
and Mercadoria.Artesao_Cod_Artesao = CAST(Artesao.Cod_Artesao AS ALPHA)
and Mercadoria.Fornecedor_Cod_Fornecedor = CAST (Fornecedor.Cod_Fornecedor AS ALPHA)

Obrigada


GOSTEI 0
Sandra

Sandra

12/05/2003

Marina,

Observe a palavra MUNICIPIO:

Select Mercadoria.[b:4214899c19]Municipio[/b:4214899c19]_Cod_Municipio
,Municipio.Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
WHERE Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.[b:4214899c19]Municipio[/b:4214899c19]_Cod_Municipio = CAST(Municipio.Cod_Municipio AS ALPHA)
and Mercadoria.Artesao_Cod_Artesao = CAST(Artesao.Cod_Artesao AS ALPHA)
and Mercadoria.Fornecedor_Cod_Fornecedor = CAST (Fornecedor.Cod_Fornecedor AS ALPHA

Será que era isso?


:wink:


GOSTEI 0
Lucas Borba

Lucas Borba

12/05/2003

Marina,

Observe a palavra MUNICIPIO:

Select Mercadoria.[b:4214899c19]Municipio[/b:4214899c19]_Cod_Municipio
,Municipio.Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
WHERE Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.[b:4214899c19]Municipio[/b:4214899c19]_Cod_Municipio = CAST(Municipio.Cod_Municipio AS ALPHA)
and Mercadoria.Artesao_Cod_Artesao = CAST(Artesao.Cod_Artesao AS ALPHA)
and Mercadoria.Fornecedor_Cod_Fornecedor = CAST (Fornecedor.Cod_Fornecedor AS ALPHA

Será que era isso?


:wink:




Olá, bom dia!

Como é no MS ACCESS, talvez não seja possível usar a função CAST.

A função val() pode ajudar se os códigos forem somente números e não alfanuméricos.

Definição: VAL(string) -> retorna os números da string. Exemplo: Val('231245') retorna 231245.

Se houver alguma letra, irá realizar a conversão até a posição da letra. Se a letra estiver na primeira posição, não converterá.
04876-786 -> 4876
05454-876 -> 5454
PO31 7PJ -> 0

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Val(Mercadoria.Municpio_Cod_Municipio) =Municipio.Cod_Municipio
and Val(Mercadoria.Artesao_Cod_Artesao) = Artesao.Cod_Artesao
and Val(Mercadoria.Fornecedor_Cod_Fornecedor) = Fornecedor.Cod_Fornecedor

GOSTEI 0
Lucas Borba

Lucas Borba

12/05/2003

Marina,

Observe a palavra MUNICIPIO:

Select Mercadoria.[b:4214899c19]Municipio[/b:4214899c19]_Cod_Municipio
,Municipio.Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
WHERE Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.[b:4214899c19]Municipio[/b:4214899c19]_Cod_Municipio = CAST(Municipio.Cod_Municipio AS ALPHA)
and Mercadoria.Artesao_Cod_Artesao = CAST(Artesao.Cod_Artesao AS ALPHA)
and Mercadoria.Fornecedor_Cod_Fornecedor = CAST (Fornecedor.Cod_Fornecedor AS ALPHA

Será que era isso?


:wink:




Olá, bom dia!

Como é no MS ACCESS, talvez não seja possível usar a função CAST.

A função val() pode ajudar se os códigos forem somente números e não alfanuméricos.

Definição: VAL(string) -> retorna os números da string. Exemplo: Val('231245') retorna 231245.

Se houver alguma letra, irá realizar a conversão até a posição da letra. Se a letra estiver na primeira posição, não converterá.
04876-786 -> 4876
05454-876 -> 5454
PO31 7PJ -> 0

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Val(Mercadoria.Municpio_Cod_Municipio) =Municipio.Cod_Municipio
and Val(Mercadoria.Artesao_Cod_Artesao) = Artesao.Cod_Artesao
and Val(Mercadoria.Fornecedor_Cod_Fornecedor) = Fornecedor.Cod_Fornecedor

GOSTEI 0
Lucas Borba

Lucas Borba

12/05/2003

Marina,

Observe a palavra MUNICIPIO:

Select Mercadoria.[b:4214899c19]Municipio[/b:4214899c19]_Cod_Municipio
,Municipio.Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
WHERE Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.[b:4214899c19]Municipio[/b:4214899c19]_Cod_Municipio = CAST(Municipio.Cod_Municipio AS ALPHA)
and Mercadoria.Artesao_Cod_Artesao = CAST(Artesao.Cod_Artesao AS ALPHA)
and Mercadoria.Fornecedor_Cod_Fornecedor = CAST (Fornecedor.Cod_Fornecedor AS ALPHA

Será que era isso?


:wink:




Olá!

Como é no MS ACCESS, talvez não seja possível usar a função CAST.

A função val() pode ajudar se os códigos forem somente números e não alfanuméricos.

Definição: VAL(string) -> retorna os números da string. Exemplo: Val('231245') retorna 231245.

Se houver alguma letra, irá realizar a conversão até a posição da letra. Se a letra estiver na primeira posição, não converterá.
04876-786 -> 4876
05454-876 -> 5454
PO31 7PJ -> 0

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Val(Mercadoria.Municpio_Cod_Municipio) =Municipio.Cod_Municipio
and Val(Mercadoria.Artesao_Cod_Artesao) = Artesao.Cod_Artesao
and Val(Mercadoria.Fornecedor_Cod_Fornecedor) = Fornecedor.Cod_Fornecedor

GOSTEI 0
Lucas Borba

Lucas Borba

12/05/2003


Tem algum comando SQL para comparar tipos de dados Numerico e String ????

Ex:

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.Municpio_Cod_Municipio =Municipio.Cod_Municipio
and Mercadoria.Artesao_Cod_Artesao = Artesao.Cod_Artesao
and Mercadoria.Fornecedor_Cod_Fornecedor = ornecedor.Cod_Fornecedor

Onde todos os campos da esquerda foram definidos como Texto e todos os campos da direita como Número. O Banco de Dados é Access.

Obrigada


Olá!

Como é no MS ACCESS, talvez não seja possível usar a função CAST.

A função val() pode ajudar se os códigos forem somente números e não alfanuméricos.

Definição: VAL(string) -> retorna os números da string. Exemplo: Val('231245') retorna 231245.

Se houver alguma letra, irá realizar a conversão até a posição da letra. Se a letra estiver na primeira posição, não converterá.
04876-786 -> 4876
05454-876 -> 5454
PO31 7PJ -> 0

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Val(Mercadoria.Municpio_Cod_Municipio) =Municipio.Cod_Municipio
and Val(Mercadoria.Artesao_Cod_Artesao) = Artesao.Cod_Artesao
and Val(Mercadoria.Fornecedor_Cod_Fornecedor) = Fornecedor.Cod_Fornecedor

GOSTEI 0
Lucas Borba

Lucas Borba

12/05/2003

Tem algum comando SQL para comparar tipos de dados Numerico e String ????

Ex:

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.Municpio_Cod_Municipio =Municipio.Cod_Municipio
and Mercadoria.Artesao_Cod_Artesao = Artesao.Cod_Artesao
and Mercadoria.Fornecedor_Cod_Fornecedor = ornecedor.Cod_Fornecedor

Onde todos os campos da esquerda foram definidos como Texto e todos os campos da direita como Número. O Banco de Dados é Access.

Obrigada





Olá!

Como é no MS ACCESS, talvez não seja possível usar a função CAST.

A função val() pode ajudar se os códigos forem somente números e não alfanuméricos.

Definição: VAL(string) -> retorna os números da string. Exemplo: Val('231245') retorna 231245.

Se houver alguma letra, irá realizar a conversão até a posição da letra. Se a letra estiver na primeira posição, não converterá.
04876-786 -> 4876
05454-876 -> 5454
PO31 7PJ -> 0

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Val(Mercadoria.Municpio_Cod_Municipio) =Municipio.Cod_Municipio
and Val(Mercadoria.Artesao_Cod_Artesao) = Artesao.Cod_Artesao
and Val(Mercadoria.Fornecedor_Cod_Fornecedor) = Fornecedor.Cod_Fornecedor

GOSTEI 0
Lucas Borba

Lucas Borba

12/05/2003

Tem algum comando SQL para comparar tipos de dados Numerico e String ????

Ex:

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Mercadoria.Municpio_Cod_Municipio =Municipio.Cod_Municipio
and Mercadoria.Artesao_Cod_Artesao = Artesao.Cod_Artesao
and Mercadoria.Fornecedor_Cod_Fornecedor = ornecedor.Cod_Fornecedor

Onde todos os campos da esquerda foram definidos como Texto e todos os campos da direita como Número. O Banco de Dados é Access.

Obrigada





Olá!

Como é no MS ACCESS, talvez não seja possível usar a função CAST.

A função val() pode ajudar se os códigos forem somente números e não alfanuméricos.

Definição: VAL(string) -> retorna os números da string. Exemplo: Val('231245') retorna 231245.

Se houver alguma letra, irá realizar a conversão até a posição da letra. Se a letra estiver na primeira posição, não converterá.
04876-786 -> 4876
05454-876 -> 5454
PO31 7PJ -> 0

Select Mercadoria.Municpio_Cod_Municipio
,Municipio.Nome_Municipio
,Artesao.Nome_Artesao
,Fornecedor.Nome_Fornecedor
FROM Mercadoria
,Fornecedor
,Artesao
,Municipio
where Mercadoria.Nome_Mercadoria = ´ESCULTURA´
and Val(Mercadoria.Municpio_Cod_Municipio) =Municipio.Cod_Municipio
and Val(Mercadoria.Artesao_Cod_Artesao) = Artesao.Cod_Artesao
and Val(Mercadoria.Fornecedor_Cod_Fornecedor) = Fornecedor.Cod_Fornecedor

GOSTEI 0
POSTAR