Iniciando no SQL: Seleção de tabelas - Parte 4
Autor/fonte: CriarWeb.com
E-mail/Url: http://www.criarweb.com/artigos/596.php
Além dos critérios até agora explicados para realizar as consultas em tabelas, SQL permite também aplicar um conjunto de funções pré-definidas. Estas funções, embora sejam básicas, podem nos ajudar em alguns momentos a expressar nossa seleção de uma maneira mais simples sem ter que recorrer a operações adicionais por parte do script que estivermos executando.
Algumas destas funções são representadas na seguinte tabela:
Soma(campo) - Calcula a soma dos registros do campo especificado;
Avg(Campo) - Calcula a média dos registros do campo especificado;
Count(*) - Proporciona o valor do número de registros que foram selecionados;
Max(Campo) - Indica qual é o valor máximo do campo;
Min(Campo) - Indica qual é o valor mínimo do campo.
Dado que o campo da função não existe no banco de dados, pois o estamos gerando virtualmente, isto pode criar inconvenientes quando estivermos trabalhando com nossos scripts na hora de tratar seu valor e seu nome de campo. É por isso que o valor da função tem que ser recuperada a partir de um apelido que nós especificaremos na sentença SQL a partir da instrução AS. A coisa poderia ficar assim:
A partir desta sentença calculamos a soma dos valores de todos os pedidos realizados e armazenamos esse valor em um campo virtual chamado soma_pedidos que poderá ser utilizado como qualquer outro campo por nossas páginas dinâmicas.
Obviamente, tudo que foi visto até agora pode ser aplicado neste tipo de funções de modo que, por exemplo, podemos estabelecer condições com a cláusula Where construindo sentenças como esta:
Isto nos proporcionaria a quantidade de exemplares de um determinado livro que foram vendidos.
Outra propriedade interessante destas funções é que permitem realizar operações com vários campos dentro de um mesmo parênteses:
Esta sentença dá como resultado o preço médio que estão sendo vendidos os livros. Este resultado não tem porquê coincidir com o do preço médio dos livros presentes no inventário, já que, pode ser que as pessoas tenham tendência a comprar os livros caros ou os baratos:
Uma cláusula interessante no uso das funções é Group By. Esta cláusula nos permite agrupar registros aos quais vamos aplicar a função. Podemos por exemplo calcular o dinheiro gastado por cada cliente:
Ou saber o número de pedidos que foram realizados:
As possibilidades como vemos são numerosas e pode ser práticas. Agora tudo fica à disposição de nossas ocorrências e imaginação.
Algumas destas funções são representadas na seguinte tabela:
Soma(campo) - Calcula a soma dos registros do campo especificado;
Avg(Campo) - Calcula a média dos registros do campo especificado;
Count(*) - Proporciona o valor do número de registros que foram selecionados;
Max(Campo) - Indica qual é o valor máximo do campo;
Min(Campo) - Indica qual é o valor mínimo do campo.
Dado que o campo da função não existe no banco de dados, pois o estamos gerando virtualmente, isto pode criar inconvenientes quando estivermos trabalhando com nossos scripts na hora de tratar seu valor e seu nome de campo. É por isso que o valor da função tem que ser recuperada a partir de um apelido que nós especificaremos na sentença SQL a partir da instrução AS. A coisa poderia ficar assim:
Select Soma(total) As soma_pedidos From pedidos
A partir desta sentença calculamos a soma dos valores de todos os pedidos realizados e armazenamos esse valor em um campo virtual chamado soma_pedidos que poderá ser utilizado como qualquer outro campo por nossas páginas dinâmicas.
Obviamente, tudo que foi visto até agora pode ser aplicado neste tipo de funções de modo que, por exemplo, podemos estabelecer condições com a cláusula Where construindo sentenças como esta:
Select Soma(quantidade) as soma_artigos From pedidos Where id_artigo=6
Isto nos proporcionaria a quantidade de exemplares de um determinado livro que foram vendidos.
Outra propriedade interessante destas funções é que permitem realizar operações com vários campos dentro de um mesmo parênteses:
Select Avg(total/quantidade) From pedidos
Esta sentença dá como resultado o preço médio que estão sendo vendidos os livros. Este resultado não tem porquê coincidir com o do preço médio dos livros presentes no inventário, já que, pode ser que as pessoas tenham tendência a comprar os livros caros ou os baratos:
Select Avg(precio) as preco_venda From artigos
Uma cláusula interessante no uso das funções é Group By. Esta cláusula nos permite agrupar registros aos quais vamos aplicar a função. Podemos por exemplo calcular o dinheiro gastado por cada cliente:
Select id_cliente, Soma(total) as soma_pedidos From pedidos Group By id_cliente
Ou saber o número de pedidos que foram realizados:
Select id_cliente, Count(*) as numero_pedidos From pedidos Group By id_cliente
As possibilidades como vemos são numerosas e pode ser práticas. Agora tudo fica à disposição de nossas ocorrências e imaginação.

Enviado por xKuRt em 08/11/2006 às 14:17
Avaliação
Esta publicação ainda não foi avaliada!
A avaliação de publicações é restrita a membros cadastrados e logados no nosso site.
Comentários
Este artigo ainda não foi comentado ou o(s) comentário(s) que foi(ram) enviado(s) a ele ainda não foi(ram) publicado(s).
Envio de comentário:
Quinta, 02 de Setembro de 2010
Área restrita
Leitura recomendada
Últimas publicações
Top 5 membros
- dddweb213 pts
- Jotah191 pts
- fbinasco165 pts
- andersonop153 pts
- fredbcn117 pts
Últimos membros cadastrados
- reniltonem 02/09
- baixehdem 02/09
- danilocarlosem 02/09



