CLAUSULA SQL - PARTE 2 - A MISSAO

LCSD 10/05/2004 16:44:01
#23952
Boa Tarde, pessoal....


Bom, como já deve ter dado para perceber, eu sou uma negação para elaborar cláusulas SQL. e agora, lá vai mais uma:

Tenho 2 tabelas exatamente iguais, e o que de uma tabela para a outra é o que vai ser gravado nela. Em uma eu gravo somente os Clientes/Fornecedor/Outros. E na outra, eu gravo somente os Possíveis Clientes.

Agora, uma pergunta: Gostaria de fazer uma cláusula para pegar TODOS os CLIENTES das 2 tabelas e as colocar em ordem alfabética por Razao.

Sei que tem como fazer isso, mas não faço nem idéia. Será que alguem poderá me ajudar???

USUARIO.EXCLUIDOS 10/05/2004 16:55:09
#23960
Resposta escolhida
Monte dois SELECT's: uma que retorne todos os clientes/fornecedores/outros e a outra consulta que retorne todos os possiveis clientes. Estas duas consultas devem possuir o mesmo número de campos. depois junte as duas consultas com a cláusula UNION .

Porém me surgiu uma grande dúvida:
Porque vc não modelou o teu banco de dados de forma que vc tivesse somente UMA tabela, e a separação entre clientes e possiveis clientes fosse realizada através de um campo POSSIVEL_CLIENTE ( True se não é cliente ainda, False se já é um cliente da empresa de vcs ) ?????????????????
USUARIO.EXCLUIDOS 11/05/2004 09:08:13
#24036

O Union funciona assim ( Não tenho como testar , mas é para ser assim ):

SQL1="Select * from Clientes where clientes = 'S' order by Razao "
SQL1 = SQL1 & " UNION "
SQL1 = SQL1 & "Select * from PossivelCliente order by Razao"

Sobre ordenar complicou ... não me vem uma idéia agora de como ordenar isto ...
USUARIO.EXCLUIDOS 11/05/2004 09:11:43
#24037
Mas de qualquer jeito tá muito estranha a modelagem destas tabelas...
Porque, se tu construiu um diagrama ER ( Entidade Relacionamento ) e avaliou ele, deveria perceber que cliente e possíveis clientes são a mesma entidade, porém o que muda nas duas é o atributo...

Tenho grandes dúvidas se vocês fizeram a melhor opção ...

E porque teria que ter o "P" na frente do código do possível cliente ?
Quem sabe vcs exibiriam um label em vermelhor, por exemplo , para possíveis clientes ? Ou concatentar um "P" na frente do código toda vez que o cliente for um possível cliente ?

USUARIO.EXCLUIDOS 11/05/2004 11:16:51
#24071
Que banco de dados vc esta usando aí ?
USUARIO.EXCLUIDOS 11/05/2004 11:21:29
#24076
Sinceramente, continuo achando que foi feita uma má escolha.

A maior prova disto é está consulta que vc está realizando .

Se existe pelo menos 3 tipos básicos de operação:
- Manipular cliente;
- Manipular possivel cliente;
- Alterar de possivel cliente para cliente.

Vc teria que programar para que estas ações estivessem disponiveis só para determinados usuários.
USUARIO.EXCLUIDOS 11/05/2004 11:24:50
#24077
Que erro ocorreu ?

Vc poderia ajudar também, não é verdade ?
Coloca o banco de dados que vc está usando, o sql que vc usou, o nro e descrição do erro ... [S37][S37][S37]
Tópico encerrado , respostas não são mais permitidas