DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!

Usando SQL para geração de relatórios (Recursos Básicos) - Revista SQL Magazine 94

Este artigo é parte de uma série e neste texto apresento recursos básicos, como uso de funções escalares, agrupamentos de dados, cláusulas SQL disponíveis e alguns operadores úteis. O estudo destes itens irá auxiliar o leitor iniciante em SQL a criar consultas e relatórios básicos.

[fechar]

Você não gostou da qualidade deste conteúdo?

(opcional) Você gostaria de comentar o que não lhe agradou?





SQL Magazine 94

[Artigo disponível no Leitor Digital DevMedia. Clique aqui para acessá-lo]

> Clique aqui para ler todos os artigos da SQL Magazine 94


É consenso entre os especialistas que SQL não é a melhor linguagem para criação de consultas complexas, já que sua função principal é a recuperação e gerenciamento de dados. Apesar de estas serem uma verdade inegável, é muito comum nos depararmos com situações em que ele, o SQL, é a única ferramenta que temos à mão para criação de um relatório. Isso ocorre muitas vezes por questão de custos, já que nem sempre é economicamente viável optar pela compra de uma solução especializada. Este cenário é muito comum no dia-a-dia das empresas e, no fim das contas, somos forçados a usá-lo.

Por esta razão, eu considero importante que todo profissional de banco de dados conheça os principais recursos do SQL para atender as solicitações dos seus usuários. Neste sentido, é importante termos em mente uma definição básica ao se trabalhar com consultas SQL que é a definição de expressão SQL. A definição que temos para o termo expressão é bastante simples: uma expressão retorna um valor. Os tipos utilizados em uma expressão variam bastante, cobrindo diferentes tipos de dados como string, numeric e boolean. Na verdade, quase tudo que inserirmos depois do SELECT ou FROM em um comando SQL pode ser considerado uma expressão. Caso você queria encontrar um item ou grupo de itens em particular em seu banco de dados, você precisará fazer uso de uma ou mais condições em suas queries. Podemos definir condições em consultas SQL utilizando a cláusula where.

Esta é a primeira parte de uma série de artigos. Neste texto, apresento recursos básicos da linguagem SQL, como principais cláusulas, funções e alguns operadores. Operadores são os elementos que você utiliza dentro de expressões para definir como você quer restringir os dados retornados por uma busca. De uma forma geral, os operadores são divididos em seis grupos: aritméticos, comparação, caractere, lógico, conjunto e outros (ler Nota DevMan 2).

 O objetivo é que o leitor menos experiente aprenda aqui os conceitos básicos para que possa acompanhar os recursos mais sofisticados que serão apresentados nos próximos artigos, como a cláusula OVER e recursos programáveis, por exemplo.

Originalmente esta palestra tratava de recursos oferecidos pelo DB2, um sistema gerenciador de bancos de dados (SGBD) que é um dos grandes líderes do mercado mundial. Porém iremos priorizar nestes artigos os recursos SQL e as sintaxes que sejam padrão ANSI SQL, ou seja, que estão ou deveriam estar disponíveis em qualquer SGBD.

Tópicos discutidos neste artigo

Para começar esta série, vamos falar do uso dos seguintes recursos SQL:

·         ordenando dados;

·         usando funções escalares;

·         juntando tabelas;

·         usando funções de agregação;

·         usando cláusulas de agregação;

·         usando operador ROLLUP;

·         usando operador CUBE;

·         usando função GROUPING.

Base de dados e considerações

Para situarmos os recursos SQL que vamos estudar, é preciso ter uma base de dados como amostra. Usaremos nestes artigos uma base com dados fictícios de demanda de produtos farmacêuticos. A Figura 1 mostra o modelo desta base.

 

Assumiremos nestes artigos que o leitor já está familiarizado com declarações do tipo SELECT, conhecendo sua sintaxe básica. Feito este comentário, vamos começar o estudo.

Ordenando dados

É possível que a ordenação seja o recurso mais básico para manipulação dos dados selecionados. E como aprendemos nas primeiras aulas de SQL, isso é feito usando-se a cláusula ORDER BY.

Importante observar no plano de execução de uma consulta que a última cláusula a ser executada numa declaração de seleção de dados é exatamente o ORDER BY. Depois de definida a “listagem” que resulta da declaração SQL é feita finalmente a ordenação dos dados.

A cláusula ORDER BY oferece várias opções, como solicitar a ordenação pelo nome das colunas, ou pelo número das colunas na listagem final. Veja por exemplo, na Listagem 1,  uma declaração SELECT para retornar a lista de cidades em ordem alfabética.

 

Listagem 1. Consulta para retornar as cidades em ordem alfabética.

SELECT C.Cidade

  FROM tblCidade C

  WHERE C.fkEstado = 1

  ORDER BY C.Cidade;

--Ou

SELECT C.Cidade

  FROM tblCidade C

  WHERE C.fkEstado = 1

  ORDER BY 1;

 

"

A exibição deste artigo foi interrompida.

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL
ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Wagner Crivelini
Atua a mais de 15 anos na área TI, particularmente com Business Intelligence. Engenheiro formado pela UNICAMP, trabalha na IBM na unidade de IBM Global Account onde atua como DBA DB2 e SQL SERVER em projetos internacionais. Profissional com várias certificações em DB2, entre elas IBM Certified Sol...
O que você achou deste post?

    9 COMENTÁRIOS

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Jorge Luiz Fernandes Paulo
O momento que vivo na empresa é tudo que preciso. Só estou com dificuldade de continuar com a video aula.
[há +1 ano] - Responder

 

[autor] Wagner Crivelini
Oi Jorge, q bom q o artigo te ajudou.
Esta é uma série de 6 artigos que devem ser publicados nos próximos números. Recomendo que dê uma olhada.

Abraço

Wagner
[há +1 ano] - Responder
 

Robinson Rodrigo Da Silva De Oliveira
O autor Wagner Crivelini possui uma didática excelente, além de apresentar diversos exemplos que ajudam na compreensão dos conceitos. Gostaria que fossem disponibilizados scripts para criação da base de dados (demanda de produtos farmacêuticos) para que os leitores possam estudar e praticar os exemplos expostos.
[há +1 ano] - Responder

 

[autor] Wagner Crivelini
Robinson

Eu usei uma base um pouco grande para estes testes, mas vc pode me encaminhar uma solicitação por email que eu te envio um backup da base para ser restaurado no DB2 ou SQL SERVER.
Obrigado pelos comentários
Abraço
Wagner
[há +1 ano] - Responder
 

Robinson Rodrigo Da Silva De Oliveira
Olá Wagner,

Obrigado, vou mandar um e-mail. Fico na expectativa dos scripts e dos seus próximos artigos.

Até a próxima!
[há +1 ano] - Responder
 

Henrique Simões
Bom dia, gostaria de saber se é possível disponibilizar um script de criação desta base para testes.

É um ótimo artigo, você esta pretendendo fazer quantos artigos relacionados a este assunto ?
[há +1 ano] - Responder

 

[autor] Wagner Crivelini
Henrique

Esta foi uma série de 5 artigos publicados entre Dez/11 a Abr/12.
Me manda um email q eu te passo um backup da base pra SQL SERVER...

Abraço
[há +1 ano] - Responder
 

Felipe Mafra
Olá, Wagner! Excelente artigo!
Poderia me inviar uma cópia do script da database?
Obrigado
Abraço
[há +1 mês] - Responder

 

[autor] Wagner Crivelini
obrigado, felipe

segue o link

http://www.4shared.com/zip/-hvnOmr5/Farmaceutico.html

abraço
[há +1 mês] - Responder
 
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03