none
Consulta pelo RG no Banco de Dados RRS feed

  • Pergunta

  • Sou novo por aqui, comecei a Estudar C# recentemente. Estou com uma dúvida e não sei se é Possível fazer este tipo de Consulta em SQL.

    Elaborei um Sistema de Cadastro de Funcionários que Contem Diversas Caixas para Preenchimento, uma delas é a caixa do RG. Gostaria de estar consultando o Funcionário Não apenas pelo NOME e também pelo RG. É Possível fazer este tipo de Consulta? Como faço?..

    Espero por um Ajuda, Obrigado!

    terça-feira, 23 de dezembro de 2014 05:39

Respostas

  • Bom dia Andrew,

    É possível sim, vc pode consultar através de qualquer campo da tabela.

    select * from TABELA_FUNCIONARIO where COLUNA_RG like '%' + @variavel_RG_Busca +'%'

    Substitua pelo nome real  da sua tabela, coluna e variável de busca!

    Uma dica, geralmente não salvamos caracteres especiais em colunas de RG, CPF, CNPJ e etc... Apenas os números para isso basta vc colocar a variável dentro da instrução replace como no exemplo abaixo

    replace(replace(@variavel_consulta, '-', ''), '.', '')

    Espero ter ajudado!

    Abraços

    terça-feira, 23 de dezembro de 2014 10:36
  • Oi...   Só colocando algo a mais na consulta do Murilo.

    Tenta assim:

    string sql = "Select * FROM TABELA_FUNCIONARIO WHERE ((COLUNA_RG LIKE '%"+@VAR_BUSCA+"%') OR (COLUNA_NOME LIKE '%"+@VAR_BUSCA+"%'))";

    Com essa string simples você terá como retorno o RG ou o NOME usando o mesmo textbox, se existir registros que contanham partes iguais todos serao retornados.

    quarta-feira, 24 de dezembro de 2014 04:55
  • Andrew

    abaixo sugiro uma leitura sobre consultas.

    https://gustavomaiaaguiar.wordpress.com/2008/08/07/dicas-e-truques-sobre-consultas-complexas-no-sql-server/

    O FireThewall lhe deu uma resposta completa e o Murilo da mesma forma.

    vamos detalhar fazendo uso do exemplo acima:

    string sql = "Select * FROM TABELA_FUNCIONARIO WHERE ((COLUNA_RG LIKE '%"+@VAR_BUSCA+"%') OR (COLUNA_NOME LIKE '%"+@VAR_BUSCA+"%'))";

    string sql = "Select * FROM TABELA_nomeDaSuaTabela WHERE ((Nome da coluna que deseja pesquisar LIKE '%"+onde voce vai colocar a informação para pesquisar. um textBox, por exemplo+"%') OR (COLUNA_NOME LIKE '%"+@VAR_BUSCA+"%'))";

    qualquer duvida você fala.

    quarta-feira, 24 de dezembro de 2014 10:35

Todas as Respostas

  • Bom dia Andrew,

    É possível sim, vc pode consultar através de qualquer campo da tabela.

    select * from TABELA_FUNCIONARIO where COLUNA_RG like '%' + @variavel_RG_Busca +'%'

    Substitua pelo nome real  da sua tabela, coluna e variável de busca!

    Uma dica, geralmente não salvamos caracteres especiais em colunas de RG, CPF, CNPJ e etc... Apenas os números para isso basta vc colocar a variável dentro da instrução replace como no exemplo abaixo

    replace(replace(@variavel_consulta, '-', ''), '.', '')

    Espero ter ajudado!

    Abraços

    terça-feira, 23 de dezembro de 2014 10:36
  • Oi...   Só colocando algo a mais na consulta do Murilo.

    Tenta assim:

    string sql = "Select * FROM TABELA_FUNCIONARIO WHERE ((COLUNA_RG LIKE '%"+@VAR_BUSCA+"%') OR (COLUNA_NOME LIKE '%"+@VAR_BUSCA+"%'))";

    Com essa string simples você terá como retorno o RG ou o NOME usando o mesmo textbox, se existir registros que contanham partes iguais todos serao retornados.

    quarta-feira, 24 de dezembro de 2014 04:55
  • Olá Murilo, Obrigado pela ajuda... Nesta parte aqui no caso o que coloco para substituir?

    A primeira parte é a coluna que desejo buscar agora e está segunda? o que coloco?

    @variavel_RG_Busca +'%'
    quarta-feira, 24 de dezembro de 2014 05:49
  • No caso a Variável coloco o que amigo ? 

    @VAR_BUSCA+"%'

    quarta-feira, 24 de dezembro de 2014 05:56
  • Andrew

    abaixo sugiro uma leitura sobre consultas.

    https://gustavomaiaaguiar.wordpress.com/2008/08/07/dicas-e-truques-sobre-consultas-complexas-no-sql-server/

    O FireThewall lhe deu uma resposta completa e o Murilo da mesma forma.

    vamos detalhar fazendo uso do exemplo acima:

    string sql = "Select * FROM TABELA_FUNCIONARIO WHERE ((COLUNA_RG LIKE '%"+@VAR_BUSCA+"%') OR (COLUNA_NOME LIKE '%"+@VAR_BUSCA+"%'))";

    string sql = "Select * FROM TABELA_nomeDaSuaTabela WHERE ((Nome da coluna que deseja pesquisar LIKE '%"+onde voce vai colocar a informação para pesquisar. um textBox, por exemplo+"%') OR (COLUNA_NOME LIKE '%"+@VAR_BUSCA+"%'))";

    qualquer duvida você fala.

    quarta-feira, 24 de dezembro de 2014 10:35