 |
ActiveDelphi .: O site do programador Delphi! :.
|
| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
Santinello Novato

Registrado: Sábado, 1 de Dezembro de 2018 Mensagens: 30
|
Enviada: Dom Mar 17, 2019 5:57 pm Assunto: Select em duas ou tres colunas mesma tabela (RESOLVIDO) |
|
|
Ola, boa tarde.
Tenho uma tabela PESSOA, nela tenho tres colunas para as tres placas de um caminhão, alem de outras colunas, preciso de um select que me tragas as tres colunas, porem, vou precisar de um filtro (between) que consulte uma placa, podendo ela estar em qualquer uma das tres colunas.
select pessoa.codigo, pessoa.nome, pessoa.nomecompleto, pessoa.placas, pessoa.placa2, pessoa.placa3, pessoa.celular,
pessoa.cod_funcao, funcao.descricao AS FUNCAO, pessoa.cod_cidade, cidade.descricao AS CIDADE,
pessoa.produto, pessoa.mp
FROM pessoa, funcao, cidade
where pessoa.cod_funcao = funcao.codigo
and pessoa.cod_cidade = cidade.codigo
and pessoa.placas between :codigo1 and :codigo2
Acredito que meu problema esteja no filtro do between
Editado pela última vez por Santinello em Seg Mar 18, 2019 9:50 pm, num total de 1 vez |
|
| Voltar ao Topo |
|
 |
imex Moderador

Registrado: Sexta-Feira, 7 de Janeiro de 2011 Mensagens: 11666
|
Enviada: Dom Mar 17, 2019 7:46 pm Assunto: |
|
|
Boa noite,
Não sei se entendi corretamente mas experimente fazer uns testes deixando o final da seguinte forma:
| Código: | and ( pessoa.placas between :codigo1 and :codigo2 or
pessoa.placa2 between :codigo1 and :codigo2 or
pessoa.placa3 between :codigo1 and :codigo2 ) |
Dependendo do componente utilizado para rodar essa query pode ser necessário utilizar nomes diferentes para os parâmetros em vez de repetir o nome 3 vezes, e nesse caso passar a ser necessário passar os valores para cada um deles.
Espero que ajude
_________________
Assinatura: https://www.imoveisemexposicao.com.br/imoveis-alugar-guarulhos-residencial-casa |
|
| Voltar ao Topo |
|
 |
Santinello Novato

Registrado: Sábado, 1 de Dezembro de 2018 Mensagens: 30
|
Enviada: Dom Mar 17, 2019 10:28 pm Assunto: |
|
|
| imex escreveu: | Boa noite,
Não sei se entendi corretamente mas experimente fazer uns testes deixando o final da seguinte forma:
| Código: | and ( pessoa.placas between :codigo1 and :codigo2 or
pessoa.placa2 between :codigo1 and :codigo2 or
pessoa.placa3 between :codigo1 and :codigo2 ) |
Dependendo do componente utilizado para rodar essa query pode ser necessário utilizar nomes diferentes para os parâmetros em vez de repetir o nome 3 vezes, e nesse caso passar a ser necessário passar os valores para cada um deles.
Espero que ajude
Não passei o SQL, para o delphi, mas no IBExpert ficou muito top, matou a pau.
Graça e Paz
Grato
_________________
Assinatura: https://www.imoveisemexposicao.com.br/imoveis-alugar-guarulhos-residencial-casa |
|
|
| Voltar ao Topo |
|
 |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|