MySQL Instrução SELECT com exemplos

O que é a consulta SELECT em MySQL?

SELECT QUERY é usado para buscar os dados do MySQL banco de dados. Os bancos de dados armazenam dados para recuperação posterior. O objetivo de MySQL Selecionar consiste em retornar das tabelas do banco de dados, uma ou mais linhas que correspondam a um determinado critério. A consulta selecionada pode ser usada em linguagem de script como PHP, Ruby ou você pode executá-la por meio do prompt de comando.

SELECIONE consulta em MySQL

Sintaxe da instrução SQL SELECT

É o comando SQL usado com mais frequência e possui a seguinte sintaxe geral

SELECT [DISTINCT|ALL ] { * | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition][GROUP BY fieldName(s)]  [HAVING condition] ORDER BY fieldName(s)

AQUI

  • SELECIONE é a palavra-chave SQL que permite ao banco de dados saber que você deseja recuperar dados.
  • [DISTINTO | TODOS] são palavras-chave opcionais que podem ser usadas para ajustar os resultados retornados da instrução SQL SELECT. Se nada for especificado, ALL será assumido como padrão.
  • {*| [Expressão de campo [AS novoNome]} pelo menos uma parte deve ser especificada, “*” selecionou todos os campos do nome da tabela especificada, fieldExpression executa alguns cálculos nos campos especificados, como adicionar números ou juntar dois campos de string em um.
  • A PARTIR DE tableName é obrigatório e deve conter pelo menos uma tabela, várias tabelas devem ser separadas por vírgulas ou unidas usando a palavra-chave JOIN.
  • ONDE condição é opcional, pode ser usada para especificar critérios no conjunto de resultados retornado da consulta.
  • GROUP BY é usado para reunir registros que possuem os mesmos valores de campo.
  • TENDO condição é usada para especificar critérios ao trabalhar usando a palavra-chave GROUP BY.
  • ORDENAR POR é usado para especificar a ordem de classificação do conjunto de resultados.

*

O símbolo da estrela é usado para selecionar todas as colunas da tabela. Um exemplo de uma instrução SELECT simples se parece com o mostrado abaixo.

SELECT * FROM `members`;

A instrução acima seleciona todos os campos da tabela de membros. O ponto e vírgula é uma instrução terminada. Não é obrigatório, mas é considerado uma boa prática encerrar suas declarações dessa forma.

Exemplos práticos

Clique para fazer o download o banco de dados myflix usado para exemplos práticos.

Você pode aprender a importar o arquivo .sql para MySQL Bancada de Trabalho

Os exemplos são executados nas duas tabelas a seguir

Quadro 1: membros mesa

número de membro nomes completos gênero data de nascimento endereço físico endereço postal número_de contato email
1 Janet Jones Feminino 21-07-1980 Lote da Primeira Rua nº 4 Mala Privada 0759 253 542 janetjones@yagoo.cm
2 Janete Smith Jones Feminino 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Masculino 12-07-1989 Rua 3 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Feminino 14-02-1984 Rua 2 23 NULL NULL NULL

Quadro 2: filmes mesa

id_do_filme título diretor ano_de lançamento Categoria ID
1 Piratas do Caribe 4 Rob Marshall 2011 1
2 Esquecendo Sarah Marshal Nicholas Stoller 2008 2
3 X-Men NULL 2008 NULL
4 Codinome Preto Edgar Jimz 2010 NULL
5 As filhinhas do papai NULL 2007 8
6 Anjos e Demonios NULL 2007 6
7 Código da Vinci NULL 2007 6
9 Honey mooners John Schultz 2005 8
16 67% culpado NULL 2012 NULL

Obtendo listagem de membros

Suponhamos que desejamos obter uma lista de todos os membros registrados da biblioteca em nosso banco de dados, usaríamos o script mostrado abaixo para fazer isso.

SELECT * FROM `members`;

Executando o script acima em MySQL workbench produz os seguintes resultados.

número de membro nomes completos gênero data de nascimento endereço físico endereço postal número_de contato email
1 Janet Jones Feminino 21-07-1980 Lote da Primeira Rua nº 4 Mala Privada 0759 253 542 janetjones@yagoo.cm
2 Janete Smith Jones Feminino 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com
3 Robert Phil Masculino 12-07-1989 Rua 3 34 NULL 12345 rm@tstreet.com
4 Gloria Williams Feminino 14-02-1984 Rua 2 23 NULL NULL NULL

Nossa consulta acima retornou todas as linhas e colunas da tabela de membros.

Digamos que estamos interessados ​​​​apenas em obter apenas os campos nomes completos, gênero, endereço físico e e-mail. O script a seguir nos ajudaria a conseguir isso.

SELECT `full_names`,`gender`,`physical_address`, `email` FROM `members`;

Executando o script acima em MySQL workbench produz os seguintes resultados.

nomes completos gênero endereço físico email
Janet Jones Feminino Lote da Primeira Rua nº 4 janetjones@yagoo.cm
Janete Smith Jones Feminino Melrose 123 jj@fstreet.com
Robert Phil Masculino Rua 3 34 rm@tstreet.com
Gloria Williams Feminino Rua 2 23 NULL

Obtendo lista de filmes

Lembre-se de que em nossa discussão acima mencionamos expressões usadas em instruções SELECT. Digamos que queremos obter uma lista de filmes do nosso banco de dados. Queremos ter o título do filme e o nome do diretor do filme em um campo. O nome do diretor do filme deve estar entre colchetes. Também queremos saber o ano em que o filme foi lançado. O script a seguir nos ajuda a fazer isso.

SELECT Concat(`title`, ' (', `director`, ')') , `year_released` FROM `movies`;

AQUI

  • O Concat () MySQL A função é usada para unir os valores das colunas.
  • A linha “Concat (`title`, ' (', `director`, ')') obtém o título, adiciona um colchete de abertura seguido do nome do diretor e depois adiciona o colchete de fechamento.

As partes da string são separadas por vírgulas na função Concat().

Executando o script acima em MySQL workbench produz o seguinte conjunto de resultados.

Concat(`título`, ' (', `diretor`, ')') ano_de lançamento
Piratas do Caribe 4 (Rob Marshall) 2011
Esquecendo Sarah Marshal (Nicholas Stoller) 2008
NULL 2008
Codinome Black (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey Mooners (John Schultz) 2005
NULL 2012

Nomes de campos de alias

O exemplo acima retornou o código de concatenação como nome do campo para nossos resultados. Suponha que queiramos usar um nome de campo mais descritivo em nosso conjunto de resultados. Usaríamos o nome alternativo da coluna para conseguir isso. A seguir está a sintaxe básica para o nome alternativo da coluna

SELECT `column_name|value|expression` [AS] `alias_name`;

AQUI

  • “SELECIONE `nome_coluna|valor|expressão`” é a instrução SELECT regular que pode ser um nome de coluna, valor ou expressão.
  • "[COMO]" é a palavra-chave opcional antes do nome alternativo que denota a expressão, o valor ou o nome do campo que será retornado como.
  • “`nome_alias`” é o nome alternativo que queremos retornar em nosso conjunto de resultados como o nome do campo.

A consulta acima com um nome de coluna mais significativo

SELECT Concat(`title`, ' (', `director`, ')') AS 'Concat', `year_released` FROM `movies`;

Obtemos o seguinte resultado

Concatenar ano_de lançamento
Piratas do Caribe 4 (Rob Marshall) 2011
Esquecendo Sarah Marshal (Nicholas Stoller) 2008
NULL 2008
Codinome Black (Edgar Jimz) 2010
NULL 2007
NULL 2007
NULL 2007
Honey Mooners (John Schultz) 2005
NULL 2012

Obtendo uma lista de membros mostrando o ano de nascimento

Suponha que queiramos obter uma lista de todos os membros mostrando o número de membro, nomes completos e ano de nascimento. Podemos usar a função LEFT string para extrair o ano de nascimento do campo de data de nascimento. O script mostrado abaixo nos ajuda a fazer isso.

SELECT `membership_number`,`full_names`,LEFT(`date_of_birth`,4) AS `year_of_birth` FROM members;

AQUI

  • “ESQUERDA(`data_de_nascimento`,4)” da Função de string ESQUERDA aceita a data de nascimento como parâmetro e retorna apenas 4 caracteres da esquerda.
  • “AS `ano_de_nascimento`” é o nome alternativo da coluna que será retornado em nossos resultados. Note o A palavra-chave AS é opcional, você pode deixá-lo de fora e a consulta ainda funcionará.

Executando a consulta acima em MySQL workbench em relação ao myflixdb nos dá os resultados mostrados abaixo.

número de membro nomes completos ano de nascimento
1 Janet Jones 1980
2 Janete Smith Jones 1980
3 Robert Phil 1989
4 Gloria Williams 1984

SQL usando MySQL Workbench

Agora vamos usar MySQL workbench para gerar o script que exibirá todos os nomes de campos de nossa tabela de categorias.

1. Clique com o botão direito na tabela de categorias. Clique em “Selecionar linhas – Limite de 1000”

2. MySQL O workbench criará automaticamente uma consulta SQL e colará no editor.

3. Os resultados da consulta serão mostrados

SQL usando MySQL Workbench

Observe que não escrevemos a instrução SELECT. MySQL workbench o gerou para nós.

Por que usar o comando SELECT SQL quando temos MySQL Bancada de trabalho?

Agora, você deve estar pensando por que aprender o comando SQL SELECT para consultar dados do banco de dados quando você pode simplesmente usar uma ferramenta como MySQL workbench para obter os mesmos resultados sem conhecimento da linguagem SQL. Claro que isso é possível, mas aprendendo como usar o comando SELECT te dá mais flexibilidade e ao controle sobre o seu Instruções SQL SELECT.

MySQL bancada de trabalho se enquadra na categoria de “Consulta por Exemplo”Ferramentas QBE. O objetivo é ajudar a gerar instruções SQL mais rapidamente para aumentar a produtividade do usuário.

Aprender o comando SQL SELECT pode permitir que você crie consultas complexas que não pode ser gerado facilmente usando utilitários de consulta por exemplo, como MySQL bancada de trabalho.

Para melhorar a produtividade você pode gerar o código usando MySQL bancada então personalizar a atender aos seus requisitos. Isso só pode acontecer se você entender como funcionam as instruções SQL!

MySQL Instrução SELECT com exemplos

Resumo

  • A palavra-chave SQL SELECT é usada para consultar dados do banco de dados e é o comando mais comumente usado.
  • A forma mais simples possui a sintaxe “SELECT * FROM tableName;”
  • Expressões também podem ser usadas na instrução select. Exemplo “SELECIONE quantidade + preço DE Vendas”
  • O comando SQL SELECT também pode ter outros parâmetros opcionais como WHERE, GROUP BY, HAVING, ORDER BY. Eles serão discutidos mais tarde.
  • MySQL O workbench pode ajudar a desenvolver instruções SQL, executá-las e produzir o resultado de saída na mesma janela.