SQL
Boa tarde pessoal, estou com a seguinte dúvida:
Tenho uma tabela com dois campos Cargo1 e Cargo2
o select é o seguinte : select * from tabela where Cargo1=[ô]NomedoCargo[ô] or Cargo2=[ô]NomedoCargo[ô]
um mesmo cargo pode vir tanto no primeiro cargo quanto no segundo.
acontece que o select fica limitado a primeira condição se vc for usar por exemplo o LIKE, ele só selecionas os registos onde o Cargo1 é verdadeiro. Queria colocar para as duas condições ou Cargo1 ou Cargo2, alguém tem alguma idéia?
Tenho uma tabela com dois campos Cargo1 e Cargo2
o select é o seguinte : select * from tabela where Cargo1=[ô]NomedoCargo[ô] or Cargo2=[ô]NomedoCargo[ô]
um mesmo cargo pode vir tanto no primeiro cargo quanto no segundo.
acontece que o select fica limitado a primeira condição se vc for usar por exemplo o LIKE, ele só selecionas os registos onde o Cargo1 é verdadeiro. Queria colocar para as duas condições ou Cargo1 ou Cargo2, alguém tem alguma idéia?
é mais ou menos assim que eu quero v se dá pra entender
Cargo1 or Cargo2=[ô][Ô] & cboProfissão.Text & [Ô][ô]
Cargo1 or Cargo2=[ô][Ô] & cboProfissão.Text & [Ô][ô]
Kaiboll da uma olhadinha no site http://www.macoratti.net/ado_filt.htm, pode ser algum detalhe que vc esta esquecendo, pois para mim o código que você esta usando deveria funcionar
Espero ter te ajudado, se te ajudei encerre o tópico e me pontuei, senão coloca a sua dúvida para a gente te ajudar
Espero ter te ajudado, se te ajudei encerre o tópico e me pontuei, senão coloca a sua dúvida para a gente te ajudar
Exitem 3 campos cargo1,cargo2 e nome
[Ô]select * from tabela where Cargo1=[ô][Ô] & cboProfissão.Text & [Ô][ô] or Cargo2=[ô][Ô] & cboProfissão.Text & [Ô][ô] and nome like [ô][Ô] & txtFiltro.Text & [Ô]*[ô] order by Nome[Ô]
tipow o mesmo cargo pode vir tanto no cargo1 ou cargo2 e ainda usar o like para filtrar.
ele traz ou um ou outro, mas junto com o like ele spo filtra apenas os registros que estão no Cargo1.
[Ô]select * from tabela where Cargo1=[ô][Ô] & cboProfissão.Text & [Ô][ô] or Cargo2=[ô][Ô] & cboProfissão.Text & [Ô][ô] and nome like [ô][Ô] & txtFiltro.Text & [Ô]*[ô] order by Nome[Ô]
tipow o mesmo cargo pode vir tanto no cargo1 ou cargo2 e ainda usar o like para filtrar.
ele traz ou um ou outro, mas junto com o like ele spo filtra apenas os registros que estão no Cargo1.
eu acho que não tem jeito
Misturar or e and tem de examinar bem, senão, vira uma salada só. Vc teria de separar por parênteses:
[Ô]select * from tabela where (Cargo1=[ô][Ô] & cboProfissão.Text & [Ô][ô] or Cargo2=[ô][Ô] & cboProfissão.Text & [Ô][ô]) and nome like [ô][Ô] & txtFiltro.Text & [Ô]*[ô] order by Nome[Ô]
No caso vc está querendo que o nome seja = txtfiltro e (cargo1 ou cargo2 seja = cboprofissão.txt).
[Ô]select * from tabela where (Cargo1=[ô][Ô] & cboProfissão.Text & [Ô][ô] or Cargo2=[ô][Ô] & cboProfissão.Text & [Ô][ô]) and nome like [ô][Ô] & txtFiltro.Text & [Ô]*[ô] order by Nome[Ô]
No caso vc está querendo que o nome seja = txtfiltro e (cargo1 ou cargo2 seja = cboprofissão.txt).
valeu brother deu certo aqui era só os parênteses mesmo..
muito obrigado
muito obrigado
Tópico encerrado , respostas não são mais permitidas