Multiplos operadores OR em uma cláusula WHERE na consulta SQL

Me deparei com uma necessidade recentemente, que embora parecesse tão óbvia, eu nunca tinha precisado fazer.

Aninhar uma consulta com vários operadores OR seguido de um operador AND no final, foi onde descobri sem querer, na verdade, nem sei onde tem isto na documentação do MySQL, por exemplo:

Se executar a consulta:

 lang="sql

SELECT * FROM tabela

WHERE

    campo1 = 'valor1'

OR

   campo1 = 'valor2'

OR

   campo1 = 'valor3'

AND

   campo2 = '0'

O resultado não vai ser o desejado, porque os operadores OR, vão anular o efeito do operador AND, então como resolver isto?

Bom, ai apareceu a mágica que descobri sozinho, colocar a parte dos operadores OR dentro de parenteses:

 lang="sql

SELECT * FROM tabela

WHERE

(

       campo1 = 'valor1'

   OR

       campo1 = 'valor2'

   OR

       campo1 = 'valor3'

)

AND

   campo2 = '0'

Agora sim, a consulta vai verificar os operadores OR e incluir o operador AND!

SQL dos municipios do IBGE para MySQL

ATUALIZADO PARA A NOVA VERSÃO DE 7 DÍGITOS E MAS MANTIDA A DE 6 DÍGITOS PARA COMPATIBILIDADE

Estava eu trabalhando num projeto, quando de repente, me deparei com a necessidade de utilizar o cadastro do código IBGE dos municípios e ao mesmo tempo me deparei novamente com a situação do Brasil.

Download do arquivo SQL no final do post

Leia mais

Como Carregar Arquivo .SQL para o MySQL

Já pensou ter que digitar intermináveis linhas no terminal do mysql para criar, atualizar, excluir, gerenciar ou inserir dados no MySQL?

Então, isto é uma situação que às vezes chega a ser desconfortante.

Entretanto, não precisa sofrer não.

Faça o que você tem que fazer no seu editor de textos preferido (Bloco de Notas, Notepad++, Gedit, Kedit, etc…) , salve este arquivo e carregue diretamente dentro do MySQL.

Leia mais

Recuperando Senha do Root do MySQL no Linux em Localhost

Suponhamos que por algum motivo óbvio de esquecimento da senha do root no seu localhost e você não consegue mais acessar o MySQL.

Existem várias soluções para isto, mas a mais prática é esta.
Você vai precisar ter o privilégio de administrador no sistema operacional.

Se for realizar este procedimento, seja o mais rápido possível, pois você vai entrar no mysql num modo sem autenticação, deixando assim seu mysql vulnerável (é claro, se você não estiver em seu computador pessoal).

Leia mais

Carregar Dados Para Uma Tabela do MySQL com Arquivo de Textos

Antes de iniciar abra o Cliente do MySQL para linha de comando.

O MySQL oferece duas formas de se inserir dados em tabelas.

  1. Utilizando o comando SQL INSERT
  2. Carregando um arquivo externo no formato de texto via LOAD DATA

O objetivo deste post é mostrar como solucionar o problema de ter que inserir muitos dados.

Para você carregar dados para dentro do mysql com um arquivo de texto, primeiramente você precisa seguir um padrão.

Leia mais

Como se conectar/desconectar ao MySQL pela linha de comando

Conectar-se ou desconectar-se ao MySQL pela linha de comando é muito fácil.

Os procedimentos abaixo podem ser realizados para o servidor local ou para o servidor remoto.

Conectando-se…

No windows ou terminal Unix o processo é o mesmo só muda o a forma como entrar no cliente.

No caso do windows, pressione as teclas Windows + R e lhe será a presentado a janela Executar.

Nesta janela você deverá digitar cmd ou mysql.

Eu costumo digitar cmd e entrar com o comando de conexão, pois fica mais fácil caso eu queira acessar um servidor em outra máquina;

Leia mais