Cláusula Over - Parte 2/2

A cláusula OVER determina o particionamento e a ordenação de um conjunto de linhas antes que a função associada seja aplicada. Ou seja, a cláusula OVER define um conjunto de linhas especificadas pelo usuário dentro do conjunto de resultados da consulta. Uma função de conjunto, em seguida, calcula um valor para cada linha na janela. Você pode usar a cláusula OVER com funções para calcular valores agregados, como médias móveis, agregados cumulativos, totais em execução ou um N superior por resultados de grupo. No primeiro documento sobre OVER, detalhamos a função ROW_NUMBER() e a aplicação de diversas funções já conhecidas do SQL Server, como SUM, AVG e COUNT. Neste documento, vamos analisar o

Desafio dos milissegundos

Encontrei esse desafio em um post no blog SQL Authority. Depois de uns dois minutos olhando para a query, descobri o segredo, e percebi como não prestamos tanta atenção ao que está em frente aos nossos olhos como deveríamos. Segue o desafio para você. A resposta está no final do post, beeem lá em baixo, para evitar spoiler! Execute este script no SQL Server: Agora observe o resultado: A hora da coluna FirstVal termina com 690 milissegundos. Mas a coluna SecondVal terminal com 70 milissegundos. Só que no SELECT, ambas são iguais. Aqui vai o desafio: Por que o resultado do SELECT apresenta valores diferentes? A resposta está lá embaixo. . . . . . 10 . . . . . 9 . . . . . 8 . . . . . 7 . . . .

Cláusula OVER - Parte 1/2

A cláusula OVER determina o particionamento e a ordenação de um conjunto de linhas antes que a função associada seja aplicada. Ou seja, a cláusula OVER define um conjunto de linhas especificadas pelo usuário dentro do conjunto de resultados da consulta. Uma função de conjunto, em seguida, calcula um valor para cada linha na janela. Você pode usar a cláusula OVER com funções para calcular valores agregados, como médias móveis, agregados cumulativos, totais em execução ou um N superior por resultados de grupo. Os scripts de exemplos utilizam o BD AdventureWorks2014. Observe este script de numeração de linhas: As colunas FullName e LastName são simples, apenas retornam o conteúdo das colunas da

Cláusula PIVOT

O operador PIVOT tem uma função bastante simples: converter linhas do resultado de um select em colunas. A sintaxe usada no PIVOT parece ser um pouco complexa, mas não é, ela é simples, não iremos detalhar essa sintaxe, pois o objetivo principal é mostrar na prática. Agora que já conhecemos a estrutura do PIVOT, vamos analisar esta query: O resultado da query exibe uma lista de todos os vendedores da AdventureWorks, o cargo, o número do pedido de venda, o valor da venda e o ano fiscal a que se refere. E o resultado retorna 3.703 linhas. Não é um relatório muito agradável de analisar, não é? Será que precisamos de todas essas informações? Depende! Depende do tipo de análise que queremos fazer

Provas de SQL Server gratuitas

Pessoal, tudo bem? Começamos o mês de novembro com uma notícia pra lá de boa!!! A Microsoft liberou três novas provas beta de SQL Server, 761, 764 e 767. A parte boa?! São gratuitas!!! As provas fazem parte das certificações de SQL Server MCSA e MCSE. Estes são os links para fazer as inscrições, e os códigos da promoção: Prova 70-761 Código: ICLWAS761RR Clique aqui para se inscrever. Prova 70-764 Código: ZTNDFS764CC Clique aqui para se inscrever. Prova 70-767 Código: BVPYHJ767DD Clique aqui para se inscrever. Na tela de inscrição, selecione a opção de prova online. O código promocional será solicitado no momento do pagamento. Não se preocupe! Depois de inserir o código, as informações de car