Como usar o comando SELECT em MySQL, SQL Server e Access?
Dica de como usar o comando SELECT em MySQL, SQL Server e Access. Conheça a estrutura do comando com o uso do FROM, WHERE, GROUP BY, ORDER BY e HAVING.
Índice deste artigo
O comando select do SQL é usado para efetuar consultas no banco de dados. Neste post veremos como usar este comando nos bancos de dados Mysql, SQL Server e Access. Estes bancos por sua vez apresentam algumas diferenças na maneira de entender o select. Vamos lá?
Estrutura do comando select:
- SELECT - Seleciona as colunas da consulta
- FROM - Seleciona a(s) tabela(s)
- WHERE - Permite criar condições para filtrar os dados retornados na consulta
- GROUP BY Agrupa dados na consulta.
- HAVING Limita o resulta em uma condição estabelecida.
- ORDER BY Especifica a coluna ou as colunas que serão ordenadas na consulta
Usando o Select na forma básica
Select * FROM empregados
No exemplo acima, usamos as cláusulas Select e From. O * (asterisco) indica que todas as colunas da tabela devem ser retornadas.
Em muitos casos é recomendável selecionar algumas colunas apenas e não todas como no exemplo acima, isto deve ser considerado pois quando o tamanho do banco aumentar as consultas poderão ficar lentas em função do grande volume de informações contida nas tabelas.
Selecionando colunas específicas para a consulta
SELECT nome,salario, cidade FROM empregados
Para retornar apenas as colunas desejadas, basta indicar os seus nomes na instrução select como no exemplo a seguir, onde selecionamos o nome, salário e cidade.
Renomeando colunas
SELECT nome, data_nascimento As Aniversario, cidade As residenciaFROM empregados
É importante observar que a coluna foi renomeada apenas nesta consulta, mas não houve alteração no nome da coluna no banco de dados.
Concatenando colunas em uma consulta.
Concatenamos colunas quando queremos unir o resultado de dois campos em um só. Imagine que numa determinada tabela exista o campo nome, sobrenome, rua e numero da casa, neste caso ao fazermos uma consulta seria interessante concatenat o nome com o sobrenome e a rua com o numero da casa.
O Mysql trata concatenação de forma diferente do SQL Server e do Access, enquanto que no Mysql usamos a função concat(), no SQL Server e no Access fazemos pelo sinal de adição.
Exemplo de concatenação no Mysql:
SELECT concat(nome, ' mora em ', cidade, '/', estadoFROM empregados
Exemplo de concatenação em SQL Server ou Access
SELECT nome + ' mora em ' + cidade + '/' + estadoFROM empregados
O sinal + (mais) indica concatenação e deve ser usado para concatenar colunas ou uma coluna com um texto. Só poderá ser concatenado colunas do tipo texto, caso for necessário concatenar colunas do tipo data ou numérico, é necessário fazer a conversão dessas colunas para texto.
A função CONVERT() do SQL Server é usada para fazer a conversão de valores de uma coluna.
Exemplo 1:
SELECT nome + ' ganha ' + convert(varchar, salario)FROM empregados
Exemplo 2:
SELECT nome + ' nasceu em ' + Convert(VarChar, data_nascimento, 103)FROM empregados
No primeiro caso, estamos convertendo o valor da coluna salário para texto, já que esta coluna é do tipo Decimal.
No segundo exemplo, estamos convertendo o valor de uma coluna do tipo data para texto. Perceba que neste caso usamos o 103 na função, isto é necessário para informarmos que queremos que a data seja convertida no formato dd/mm/aaaa.
Selecionando valores distintos
Para eliminar linhas duplicadas, usamos a palavra-chave DISTINCT na cláusula SELECT.
SELECT distinct cidadeFROM empregados
No exemplo acima, usamos a palavra-chave distinct na coluna cidade, mas é possível relacionar mais de uma coluna, por exemplo, cidade e estado. Neste caso a combinação das duas colunas deve ser distinta.
Limitando o nº de linhas em uma consulta
Limitar o número de linhas é usado quando não queremos listar todas as linhas de uma tabela, seja pelo volume de linhas ou por não haver necessidade. O Mysql trata esta questão de forma diferente do SQL Server e do Access.
Em SQL Server e Access use o Top para indicar o limite de linhas desejado na consulta.
SELECT top 7 *FROM empregados
Em Mysql use o Limit para indicar o limite de linhas desejado na consulta.
SELECT *FROM empregados limit 0,7
O resultado será o mesmo, porém a leitura pode ser um pouco diferente, já que o top vai pegar as sete primeiras linhas e o limit vai pegar a partir de 0 até 7.
Veja também
- 0800 da Gol, Tam, Azul, Air France e outras Empresas Aéreas
- 10 itens sobre a região Sudeste do Brasil: SP, RJ, MG e ES
- Extrato bancário: Itaú, Bradesco, Santander, Caixa, BB e outros bancos
- Cursos superiores e faculdades em Feira de Santana
- Cursos e Faculdades em Lauro de Freitas/BA
- Cursos superiores e faculdades em São Carlos
- Cursos e Faculdades em Umuarama/PR
- Onde achar livros grátis em PDF? Lista de livros gratuitos na internet
- Nota Fiscal Paulista: Cadastro, Consulta de Créditos e Senha de Acesso
- Como voltar a estudar com o EJA - Educação de Jovens e Adultos?