Forums » PHP e MySQL

Algumas dicas para Consultas no MySQL

    • 466 posts
    9 de julho de 2014 03:29:02 ART

    Algumas dicas para Consultas no MySQL

    Algumas funções são importantes de serem conhecidas por um programador iniciante que queira usar o MySQL como servidor de banco de dados. É algo simples, mas que vai facilitar a vida dos iniciantes e colocá-los no caminho para pegar mais experiência com o MySQL.

    Considere a seguinte Tabela Pessoal com os valores abaixo:

    Código Nome Time 01 Fabricio Corinthians 02 Felipe São Paulo 03 Gustavo Corinthians 04 Daniel Palmeiras 05 Leonardo Palmeiras
     

    DISTINCT: retorna apenas uma linha de dados para todo o grupo de linhas que tenha o mesmo valor.

    Exemplo:
    SELECT DISTINCT time FROM pessoal;
    Corinthians (estava duas vezes só que só retornou uma única linha)
    São Paulo
    Palmeiras

    ALL: Retorna todos os dados, oposto de DISTINCT.

    Exemplo:
    SELECT ALL time FROM pessoal;
    Corinthians
    São Paulo
    Corinthians
    Palmeiras
    Palmeiras

    WHERE: Dá uma condição para os dados serem buscados.

    Exemplo:
    SELECT nome FROM pessoal WHERE time = 'São Paulo';
    Felipe

     ORDER BY: Retorna os comandos em ordem ascendente (ASC) ou descendente (DESC). O padrão é ascendente.

    Exemplo:
    SELECT nome FROM pessoal ORDER BY nome DESC;
    Leonardo
    Gustavo
    Felipe
    Fabrício
    Daniel

    LIMIT [início,] linhas: Retorna o número de linhas especificado. Se o valor início for fornecido, aquelas linhas são puladas antes do dado ser retornado. A primeira linha é 0.

    Exemplo:
    SELECT * FROM pessoal LIMIT 3,1;
    04 Daniel Palmeiras
     

    FUNÇÕES:

    1. ABS: Valor absoluto do número, ou seja, só considera a parte numérica não se importando com o sinal positivo ou negativo do mesmo.
    Exemplo: ABS(-145) retorna 145

    2. BIN: Binário de número decimal
    Exemplo: BIN(8) retorna 1000

    3. CURDATE() / CURRENTDATE(): Data atual na forma YYYY/MM/DD
    Exemplo: CURDATE() retorna 2002/04/04

    4. CURTIME() / CURRENTTIME(): Hora atual na forma HH:MM:SS
    Exemplo: CURTIME() retorna 13:02:43

    5. DATABASE: Nome do banco de dados atual
    Exemplo: DATABASE() retorna bdteste

    6. DAYOFMONTH: Dia do mês para a data dada, na faixa de 1 a 31
    Exemplo: DAYOFMONTH('2004-04-04') retorna 04

    7. DAYNAME: Dia da semana para a data dada
    Exemplo: DAYNAME('2004-04-04') retorna Sunday

    8. DAYOFWEEK: Dia da semana em número para a data dada, na faixa de 1 a 7, onde o 1 é domingo.
    Exemplo: DAYOFWEEK('2004-04-04') retorna 1

    9. DAYOFYEAR: Dia do ano para a data dada, na faixa de 1 até 366
    Exemplo: DAYOFYEAR('2004-04-04') retorna 95.

    10. FORMAT(NÚMERO, DECIMAIS): Formata o número nitidamente com o número de decimais dado.
    Exemplo: FORMAT(5543.00245,2) retorna 5.543.002,45

    11. LIKE: faz uma busca sofisticada por uma substring dentro de uma string informada. Temos, dentro da função LIKE, os seguintes caracteres especiais utilizados em substrings:

                   % - Busca zero ou mais caracteres;
                   _ - Busca somente um caractere.


    Exemplo 1: 
    SELECT nome From pessoal Where nome like ‘F%’;
    Fabricio
    Felipe

    O caracter ‘%’ na consulta acima indica que estamos procurando nomes que possuem a incial F.

    Exemplo 2: 
    SELECT nome From pessoal Where nome like ‘_a%’;
    Daniel
    Fabricio

    O caracter ‘_’ na consulta acima indica que estamos procurando nomes nos quais a letra A é a segunda letra do nome.

    Exemplo 3:
    SELECT nome From pessoal Where nome like ‘%o’;
    Fabrício
    Gustavo
    Leonardo

    A consulta acima buscou nomes em que a última letra é o caractere ‘O’.


    12. A função Left retorna os primeiros caracteres à esquerda de uma string.

    Sintaxe: LEFT(string,tamanho)

    Exemplo: SELECT LEFT(nome,3) from pessoal
    Fab
    Fel
    Gus
    Dan
    Leo

    Esta consulta retornará os 3 primeiros caracteres à esquerda dos registros da coluna nome.

    13. A função Right retorna os últimos caracteres à direita de uma string.

    Sintaxe: RIGHT(string1,tamanho)

    Exemplo:
    SELECT RIGHT(nome,4) From pessoal;

    icio
    lipe
    tavo
    niel
    ardo

    Para tomar conhecimento das outras funções do MySQL, basta acessar o linkhttp://mysql.com/doc/, onde consta a sua documentação.