Fórum Como fazer select separado por vírgula? #25458

05/07/2008

0

SQL

Tenho um dicionário onde o lado esquerdo é língua desejada, o lado direito é a tradução, é claro que ´lado´ é uma forma de se manifestar, mas é como a tabela está configurada.
Vamos supor que o ´lado esquerdo´ esteja a língua X e no lado direito a tradução para o portugues.
Campo esquerdo = Lingua estrangeira
Campo direito = Portugues
Campo esquerdo apenas uma palavra, não importa qual
Campo direito diversas traduções sempre separadas por vírgula
O que quero, colocar em ordem alfabética, o que está na coluna direita, trazendo a forma original da esquerda, independentemente da quantidade de palavra que existam na direita.
Exemplo
Coluna esquerda (língua estrangeira) := ´A´
Coluna direita (tradução em português) := ´senão, portanto, entretanto´
Coluna esquerda (língua estrangeira) := ´B´
Coluna direita (tradução em português) := ´chamar, telefonar´
Quero listar de forma que fique o seguinte em ordem alfabética
Coluna esquerda (língua estrangeira) := ´C´
Coluna direita (tradução em português) := ´olhar, ver´
Chamar := ´B´
Entretanto := ´A´
Olhar := ´C´
Portanto := ´A´
Senão := ´A´
Portanto := ´A´
Telefonar := ´B´
Ver := ´C´
Este conjunto será utilizado par a impressão da tradução totalmente em ordem alfabética, com a impressão na língua estrangeira não há problema, o problema é com a colocação em ordem alfabética da tradução que normalmente é composta de múltiplas palavras!


Edilcimar

Edilcimar

Responder

Posts

07/07/2008

Aleriopreto

vc pode usar um select campotraducao from traducao
where palavra like :palavra
order by campotraducao


Responder

Gostei + 0

07/07/2008

Edilcimar

Lamento, não é isto que eu quero, eu quero clicar num botão e fazer o select de TODAS as palavras


Responder

Gostei + 0

07/07/2008

Gustavo_marcon

Não sei se entendi tua pergunta, mas não seria o caso de usar a instrução IN no teu select ?

Vc organiza uma string com todas as palavras que vc quer consultar, separando elas por vírgula, entao passar como argumento para teu select usando IN.
SELECT oquevcquiser FROM tabela WHERE teucampo IN (:PALAVRAS_SEPARADAS_POR_VIRGULA);


Se não for isso, esclareça um pouco mais.


Responder

Gostei + 0

07/07/2008

Edilcimar

Eu quero que TODAS as palavras constantes em TODOS os registros da tradução em português venham, assim como os seus significados na língua estrangeira, conforme descrito no exemplo inicial, é claro que lá só coloquei 3, mas quero trazer de volta o dicionário inteiro


Responder

Gostei + 0

07/07/2008

Gandalf.nho

Experimente fazer 3 tabelas: uma com as palavras no idioma estrangeiro, outra com as palavras em português e uma terceira unindo as duas primeiras. Assim você pode pesquisar sem problemas, pôr em ordem alfabética...


Responder

Gostei + 0

07/07/2008

Edilcimar

O problema é como fazer este select!
Por que mudaram para o fórum de banco de dados se o problema envolve programação de Select, que diz respeito a Delphi?


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar