fbpx

Últimas do BLOG

SQLSATURDAY Salvador 2017

Salve SQL Geeks de plantão! Neste final de semana aconteceu o primeiro SQLSATURDAY de Salvador – e último SQLSAT do ano em terras brazucas! Como sempre, foi muito bom e gratificante reencontrar amigos, fazer networking e é claro, conversar sobre SQL SERVER. Destaque da manhã para a Keynote realizada pelo Gustavo Gattass(@ggattass), gerente de produto da Microsoft, apresentando sobre o panorama da plataforma de dados da Microsoft no Brasil e no mundo. É muito gratificante ver que a Microsoft nos apoia e ajuda em eventos grandiosos como este! Neste evento fiz um overview básico do Linux para DBAs SQL SERVER, você encontra o material na agenda do evento, clicando aqui. Crédito da foto: Rodrigo Crespi (@sqlcrespi)  

Ler mais »

Encontro SQL BH – Por dentro das opções de Alta Disponibilidade do SQL SERVER

Salve SQLGeeks de plantão! Neste final de semana apresentamos as opções de alta disponibilidade disponíveis no SQL SERVER em um encontro do SQL BH. Foi muito gratificante ver o pessoal com vontade de aprender, mesmo em um final de semana pós-feriado! São atitudes assim que nos incentivam a sempre continuar e buscar o melhor para apresentar! Obrigado galera! O material que utilizei você consegue clicando aqui: SQLBH_Set_2017.zip   Até a próxima pessoal! Happy SQLServing!

Ler mais »

Apresentação Data Community Portugal – Ago 2017

Fala pessoal, bom dia! No próximo dia 07 de Agosto, estaremos em Lisboa conversando sobre Alta Disponibilidade do SQL SERVER no Linux e sobre semelhanças e diferenças do SQL SERVER e Oracle para Administradores. O evento acontecerá à partir das 18:30 – horário local. Como a grande maioria de eventos de SQL SERVER, é gratuito – inscreva-se aqui: https://www.eventbrite.pt/e/bilhetes-2o-encontro-da-data-community-portugal-36756785535. No Facebook você pode encontrar o link aqui: https://www.facebook.com/events/153509681870089

Ler mais »

The Developer’s Conference SP 2017

Fala pessoal, tudo bem por aí? Sobre o TDC – Trilha de Banco de Dados, que aconteceu no dia 20/07/2017: Excelente evento, muito bem organizado, grande infraestrutura e o melhor: Bastante heterogêneo (muitas tecnologias, sobre tudo e tudo junto e misturado!) O Evento aconteceu pela semana toda. Mas a trilha de banco de dados foi apenas na quinta feira. Palestrei sobre as primeiras impressões sobre Alta Disponibilidade no SQL SERVER no Linux. Você pode baixar o Powerpoint e scripts que eu usei aqui: TDC_2017_SQLSERVER_HA_Linux Me fizeram duas perguntas sensacionais lá, vou colocá-las aqui: Temos a replicação nativa do SQL SERVER no Linux? – Transacional e Merge ainda não são suportadas. E os contadores PERFMON do SQL SERVER no Linux? – Não existem, PERFMON é uma ferramenta do Windows, no Linux temos que utilizar ferramentas básicas de troubleshooting dele (SAR, TOP, FREE, etc) e dentro do SQL SERVER podemos usar Extended Events quando temos um problema mais grave (consultem o BLOG do Vitor Fava para mais detalhes sobre XEvents, ele tem uma série gigante sobre isso).   É isso pessoal! Até a próxima! Happy SQLServing!      

Ler mais »

Window Functions parte 1

Fala pessoal! neste vídeo mostro bem rapidamente como utilizar as Window Function com as funções de classificação do T-SQL. Vamos aprofundar um pouco no módulo seguinte! Aqui está o código (retirei do Simple Talk e da apresentação do Fabiano no SQLSAT 100, as fontes estão logo em cima!) [code language=”sql”] –cria a base de dados /*fonte: https://www.simple-talk.com/sql/t-sql-programming/sql-server-2012-window-function-basics/ outras fontes: http://blogfabiano.com/?s=sql+saturday+100 */ USE TSQL2012; GO IF OBJECT_ID(‘RegionalSales’, ‘U’) IS NOT NULL DROP TABLE RegionalSales; GO CREATE TABLE RegionalSales ( SalesID INT NOT NULL IDENTITY PRIMARY KEY, SalesGroup NVARCHAR(30) NOT NULL, Country NVARCHAR(30) NOT NULL, AnnualSales INT NOT NULL ); GO INSERT INTO RegionalSales (SalesGroup, Country, AnnualSales) VALUES (‘North America’, ‘United States’, 22000), (‘North America’, ‘Canada’, 32000), (‘North America’, ‘Mexico’, 28000), (‘Europe’, ‘France’, 19000), (‘Europe’, ‘Germany’, 22000), (‘Europe’, ‘Italy’, 18000), (‘Europe’, ‘Greece’, 16000), (‘Europe’, ‘Spain’, 16000), (‘Europe’, ‘United Kingdom’, 32000), (‘Pacific’, ‘Australia’, 18000), (‘Pacific’, ‘China’, 28000), (‘Pacific’, ‘Singapore’, 21000), (‘Pacific’, ‘New Zealand’, 18000), (‘Pacific’, ‘Thailand’, 17000), (‘Pacific’, ‘Malaysia’, 19000), (‘Pacific’, ‘Japan’, 22000); GO ———————————————————————————————————————————– –sintaxe b�sica: <window function> OVER ( [ PARTITION BY <expression> [, … n] ] –define a janela [ ORDER BY <expression> [ASC|DESC] [, … n] ] –define a ordem dos dados dentro da janela [ ROWS|RANGE <window frame> ] –frame, ou moldura, define em quais linhas a fun��o � calculada ) go ————————————————————————————————————— –fun��es de RANKING: –ranking functions: –a janela � a tabela toda: –ORDER BY OBRIGAT�RIO: SELECT SalesGroup, Country, AnnualSales, ROW_NUMBER() OVER(ORDER BY AnnualSales DESC) AS RowNumber, RANK() OVER(ORDER BY AnnualSales DESC) AS BasicRank, DENSE_RANK() OVER(ORDER BY AnnualSales DESC) AS DenseRank, NTILE(3) OVER(ORDER BY AnnualSales DESC) AS NTileRank FROM RegionalSales; go ————————————————————– –ordena��o diferente SELECT SalesGroup, Country, AnnualSales, ROW_NUMBER() OVER(ORDER BY AnnualSales DESC) AS RowNumber, RANK() OVER(ORDER BY AnnualSales DESC) AS BasicRank, DENSE_RANK() OVER(ORDER BY AnnualSales DESC) AS DenseRank, NTILE(3) OVER(ORDER BY AnnualSales DESC) AS NTileRank FROM RegionalSales ORDER BY SalesGroup, Country; ————————————————————- –defini��o de janela: SALESGROUP SELECT SalesGroup, Country, AnnualSales, ROW_NUMBER() OVER(PARTITION BY SalesGroup ORDER BY AnnualSales DESC) AS RowNumber, RANK() OVER(PARTITION BY SalesGroup ORDER BY AnnualSales DESC) AS BasicRank, DENSE_RANK() OVER(PARTITION BY SalesGroup ORDER BY AnnualSales DESC) AS DenseRank, NTILE(3) OVER(PARTITION BY SalesGroup ORDER BY AnnualSales DESC) AS NTileRank FROM RegionalSales; ———————————————————— –utilizando fun��es de agrupamento em janelas: –grouping functions: SELECT SalesGroup, Country, AnnualSales, COUNT(AnnualSales) OVER(PARTITION BY SalesGroup) AS CountryCount,–janela � SALESGROUP, contar quantos existem SUM(AnnualSales) OVER(PARTITION BY SalesGroup) AS TotalSales, –soma total de vendas por SALESGROUP AVG(AnnualSales) OVER(PARTITION BY SalesGroup) AS AverageSales –m�dia por SALESGROUP FROM RegionalSales ORDER BY SalesGroup, AnnualSales DESC; —————————————– –igual, menos colunas SELECT DISTINCT SalesGroup, COUNT(AnnualSales) OVER(PARTITION BY SalesGroup) AS CountryCount, SUM(AnnualSales) OVER(PARTITION BY SalesGroup) AS TotalSales, AVG(AnnualSales) OVER(PARTITION BY SalesGroup) AS AverageSales FROM RegionalSales ORDER BY TotalSales DESC; ——————————————– –AGRUPANDO E ORDENANDO –grouping with ordering: each grouping column is different! –duplicate are aggregated together /* The default setting for the ROWS/RANGE subclause is RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW. This means that, for each row in the partition, the window function is applied to the current row and the preceding rows only. So aggregations don�t operate on the

Ler mais »

Dica relâmpago – Criando um arquivo de determinado tamanho no Windows

Aqueles que estão acostumados com o Linux, conhecem a facilidade de criar um arquivo com o comando TOUCH. No Windows podemos usar o comando FSUTIL para fazer a mesma coisa. Um arquivo dummy tem várias utilidades mas a principal é testar tempo de cópia entre um servidor e outro por exemplo! Para criar um arquivo então utilize a seguinte sintaxe: FSUTIL FILE CREATENEW <<Caminho e nome do arquivo>> Tamanho em Bytes Cuidado para o tamanho que deve ser em Bytes! Até a próxima pessoal!   Happy SQL Serving!

Ler mais »

Cadastre-se e fique por dentro das novidades!

Categorias

Siga-nos:

Vídeo em destaque: