SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
Banco de Dados
Aula 6 – Structured Query Language
          SQL – Funções




          Instrutor Rafael Albani
Conteúdo
●   Funções
●   Manipulação de datas e horas
●   Manipulação de strings
●   Manipulação de números
●   Controle de fluxo
Funções
●   São recursos fornecidos pelo MySQL para
    manipulação de dados em consultas SQL;
●   Permitem a apresentação de dados de
    uma forma personalizada e de acordo
    com a necessidade requerida em uma
    situação;
Funções
●   Podem ser divididas em 4 grandes
    categorias:
       –   Manipulação de datas e horas;
       –   Manipulação de strings;
       –   Manipulação de números;
       –   Controle de fluxo.
Manipulação de datas e horas
●   As funções de manipulação de datas e
    horas permitem a recuperação de datas
    em determinados formatos, apenas o ano
    de uma data ou apenas os minutos de um
    determinado horário, entre outras
    possibilidades.
Manipulação de datas e horas
●   Algumas funções:
       –   Date_Format(<data>,<formato>);
       –   Day(<data>);
       –   Month(<data>);
       –   Year(<data>);
       –   Hour(<hora>);
       –   Minute(<hora>);
       –   Second(<hora>).
Manipulação de strings
●   As funções de manipulação de strings
    permitem a modificação de strings;
●   Como por exemplo, retornar todos os
    caracteres de uma string em maiúsculo ou
    em minúsculo, concatenar duas strings,
    etc.
Manipulação de strings
●   Algumas funções:
       –   Concat(<string>,<string>, ...);
       –   Length(<string>);
       –   Replace(<string>, <dastring>,<tostring>);
       –   Reverse(<string>);
       –   Upper(<string>);
       –   Lower(<string>);
       –   Repeat(<string>).
Manipulação de números
●   As funções de manipulação de números
    permitem a modificação de números e
    também a realização de operações
    matemáticas;
●   Como por exemplo, retornar um número
    com casas decimais com uma vírgula ao
    invés de um ponto separando as casas
    decimais, elevar um número a uma
    determinada potência, etc.
Manipulação de números
●   Algumas funções:
       –   Pow(<número>,<potência>);
       –   Round(<número>);
       –   Format(<número>,<casas_decimais>);
       –   Sqrt(<número>);
       –   Truncate(<número>,<casas_decimais>).
Controle de fluxo
●   São funções que permitem o controle do
    fluxo de uma determinada operação;
●   Utilizadas quando existe a necessidade
    de verificar uma condição em particular,
    para então retornar o valor de uma
    determinada consulta.
Controle de fluxo
●   As duas principais funções de controle de
    fluxo são:
       –   Case;
       –   If.
Controle de fluxo - Case
●   Semelhante a estrutura Case encontrada
    em linguagens de programação;
●   Permite que a partir do valor de um
    campo, um conjunto de valores em
    particular possa ser retornado.
Controle de fluxo - Case
 SELECT id_pedido, case month(data_emissao)
   when 1 then 'Janeiro' when 2 then 'Fevereiro'
   when 3 then 'Março' when 4 then 'Abril'
   when 5 then 'Maio' when 6 then 'Junho'
   when 7 then 'Julho' when 8 then 'Agosto'
   when 9 then 'Setembro' when 10 then 'Outubro'
   when 11 then 'Novembro' when 12 then 'Dezembro'
   end as 'Mês da Venda'
 FROM pedidos p;
Controle de fluxo - If
 ●   Semelhante a estrutura If encontrada em
     linguagens de programação;
 ●   Permite que através de verificações de
     expressões relacionais e/ou lógicas, um
     resultado em particular seja retornado em
     uma consulta.
Controle de fluxo - If
SELECT item, valor,
IF(valor<30,'Barato','Caro')
from itens;
Referências
●   Documentação MySQL sobre Funções:
    http://dev.mysql.com/doc/refman/5.1/en/functions.html

Weitere ähnliche Inhalte

Ähnlich wie SQL Funções para Manipulação de Dados

[Webinar] Performance e otimização de banco de dados MySQL
[Webinar] Performance e otimização de banco de dados MySQL[Webinar] Performance e otimização de banco de dados MySQL
[Webinar] Performance e otimização de banco de dados MySQLKingHost - Hospedagem de sites
 
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIOracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIFernando Ike
 
Uso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlUso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlLocaweb
 
Modulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptxModulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptxAugustoNicolau2
 
Introdução FireDAC Acesso multi-banco para Delphi e C++ Builder
Introdução FireDACAcesso multi-banco para Delphi e C++ BuilderIntrodução FireDACAcesso multi-banco para Delphi e C++ Builder
Introdução FireDAC Acesso multi-banco para Delphi e C++ BuilderDiego Rosa
 
Apostila Curso Php My Sql(Portugues)
Apostila Curso Php My Sql(Portugues)Apostila Curso Php My Sql(Portugues)
Apostila Curso Php My Sql(Portugues)guestcc491
 
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdfQuitriaSilva550
 
Php curso de php com my sql
Php   curso de php com my sqlPhp   curso de php com my sql
Php curso de php com my sqlrobinhoct
 

Ähnlich wie SQL Funções para Manipulação de Dados (12)

Agrupamento
AgrupamentoAgrupamento
Agrupamento
 
Agrupamento
AgrupamentoAgrupamento
Agrupamento
 
[Webinar] Performance e otimização de banco de dados MySQL
[Webinar] Performance e otimização de banco de dados MySQL[Webinar] Performance e otimização de banco de dados MySQL
[Webinar] Performance e otimização de banco de dados MySQL
 
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIOracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
 
Uso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sqlUso de estatísticas pelo postgre sql
Uso de estatísticas pelo postgre sql
 
Modulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptxModulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptx
 
Introdução FireDAC Acesso multi-banco para Delphi e C++ Builder
Introdução FireDACAcesso multi-banco para Delphi e C++ BuilderIntrodução FireDACAcesso multi-banco para Delphi e C++ Builder
Introdução FireDAC Acesso multi-banco para Delphi e C++ Builder
 
Bd ii material
Bd ii   materialBd ii   material
Bd ii material
 
Apostila Curso Php My Sql(Portugues)
Apostila Curso Php My Sql(Portugues)Apostila Curso Php My Sql(Portugues)
Apostila Curso Php My Sql(Portugues)
 
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
364722271-Modulo-III-Linguagem-SQL-Versao-Final.pdf
 
Php curso de php com my sql
Php   curso de php com my sqlPhp   curso de php com my sql
Php curso de php com my sql
 
Introdução ao GraphQL
Introdução ao GraphQLIntrodução ao GraphQL
Introdução ao GraphQL
 

SQL Funções para Manipulação de Dados

  • 1. Banco de Dados Aula 6 – Structured Query Language SQL – Funções Instrutor Rafael Albani
  • 2. Conteúdo ● Funções ● Manipulação de datas e horas ● Manipulação de strings ● Manipulação de números ● Controle de fluxo
  • 3. Funções ● São recursos fornecidos pelo MySQL para manipulação de dados em consultas SQL; ● Permitem a apresentação de dados de uma forma personalizada e de acordo com a necessidade requerida em uma situação;
  • 4. Funções ● Podem ser divididas em 4 grandes categorias: – Manipulação de datas e horas; – Manipulação de strings; – Manipulação de números; – Controle de fluxo.
  • 5. Manipulação de datas e horas ● As funções de manipulação de datas e horas permitem a recuperação de datas em determinados formatos, apenas o ano de uma data ou apenas os minutos de um determinado horário, entre outras possibilidades.
  • 6. Manipulação de datas e horas ● Algumas funções: – Date_Format(<data>,<formato>); – Day(<data>); – Month(<data>); – Year(<data>); – Hour(<hora>); – Minute(<hora>); – Second(<hora>).
  • 7. Manipulação de strings ● As funções de manipulação de strings permitem a modificação de strings; ● Como por exemplo, retornar todos os caracteres de uma string em maiúsculo ou em minúsculo, concatenar duas strings, etc.
  • 8. Manipulação de strings ● Algumas funções: – Concat(<string>,<string>, ...); – Length(<string>); – Replace(<string>, <dastring>,<tostring>); – Reverse(<string>); – Upper(<string>); – Lower(<string>); – Repeat(<string>).
  • 9. Manipulação de números ● As funções de manipulação de números permitem a modificação de números e também a realização de operações matemáticas; ● Como por exemplo, retornar um número com casas decimais com uma vírgula ao invés de um ponto separando as casas decimais, elevar um número a uma determinada potência, etc.
  • 10. Manipulação de números ● Algumas funções: – Pow(<número>,<potência>); – Round(<número>); – Format(<número>,<casas_decimais>); – Sqrt(<número>); – Truncate(<número>,<casas_decimais>).
  • 11. Controle de fluxo ● São funções que permitem o controle do fluxo de uma determinada operação; ● Utilizadas quando existe a necessidade de verificar uma condição em particular, para então retornar o valor de uma determinada consulta.
  • 12. Controle de fluxo ● As duas principais funções de controle de fluxo são: – Case; – If.
  • 13. Controle de fluxo - Case ● Semelhante a estrutura Case encontrada em linguagens de programação; ● Permite que a partir do valor de um campo, um conjunto de valores em particular possa ser retornado.
  • 14. Controle de fluxo - Case SELECT id_pedido, case month(data_emissao) when 1 then 'Janeiro' when 2 then 'Fevereiro' when 3 then 'Março' when 4 then 'Abril' when 5 then 'Maio' when 6 then 'Junho' when 7 then 'Julho' when 8 then 'Agosto' when 9 then 'Setembro' when 10 then 'Outubro' when 11 then 'Novembro' when 12 then 'Dezembro' end as 'Mês da Venda' FROM pedidos p;
  • 15. Controle de fluxo - If ● Semelhante a estrutura If encontrada em linguagens de programação; ● Permite que através de verificações de expressões relacionais e/ou lógicas, um resultado em particular seja retornado em uma consulta.
  • 16. Controle de fluxo - If SELECT item, valor, IF(valor<30,'Barato','Caro') from itens;
  • 17. Referências ● Documentação MySQL sobre Funções: http://dev.mysql.com/doc/refman/5.1/en/functions.html