
Olá,
Seja bem vindo ao treinamento SQL Server 2017 - Fundamento profissionais em T-SQL.
A Revolução 4.0 já iniciou e estamos vivendo o inicio de transformações que afetarão os novos comportamentos nos próximos anos. E as transformações virão de áreas de engenharia genética, nanotecnologias, realidade aumentada, impressões 3D, BigData e IoT. E tudo isso acontecendo de forma diferente das demais revoluções : A velocidade, o alcance e os impactos.
Com a internet enraizada no nosso dia-a-dia, essa nova revolução chega de forma rápida, em todos os pontos do planeta e causa os impactos.
Nesta aula vamos montar um ambiente exclusivo e separado do seu notebook ou computador para aplicarmos todo o ensinamento desse treinamento.
Efetuar o download das aplicações e instalações
Banco de Dados
Um banco de dados é um conjuntos de dados organizados em tabelas. Uma instância pode ter vários banco de dados. Durante o processo de instalação de uma instância do SQL Server, ele cria diversos banco de dados chamados banco de dados de sistema uso e controle somente do SQL Server.
Para voce ter um banco de dados, voce deverá criar uma um. Veremos nas próximas aulas em como criar um banco de dados, mas na sua forma mais, simples.
O processo de criação de um banco de dados na sua forma completa, merece um treinamento exclusivo.
Quando criamos um banco de dados para armazenar os dados da sua aplicação, ele será armazenados fisicamente em discos.
Por isso, um banco de dados é formado por arquivos de dados localizados em pastas dentro dos discos. Um banco de dados deve ter, no minimo, dois arquivos em discos.
Um arquivo para os armazenar os dados e outro arquivo para o chamado log de transação.
O acesso ao banco de dados deve ser feito com um usuário com permissões que pode ser desde o dono do banco de dados até o acesso mais restritivo.
Para que possamos colocar em prática os exemplos e realizar os testes, devemos montar uma ambiente com dados de exemplos.
Para isso você deverá efetuar o download de uma solução de banco de dados que preparei para esse treinamento.
Nesta solução teremos diversos scripts com o conteúdo para criar bancos de dados de exemplos e todos os comandos aplicados nas aulas.
Utilizaremos a ferramenta SSMS que abrir a solução e preparar o ambiente.
Então vamos ao video.
Aprendemos que o SQL é categorizado em 3 grupos pelo padrão ANSI-92 e que o nosso foco neste treinamento é o grupo DML, com as instruções SELECT, INSERT, UPDATE e DELETE.
A ideia da aula é passarmos a conhecer a sintaxe básica dessas instruções, como montar os comandos e executar. Será feito a explicação básica de algumas cláusulas.
Você deve se familiarizar com os comandos no formato ANSI para que nas próximas aulas entraremos em detalhes e particularidade da linguagem T-SQL.
Então vamos na mão na massa !!
Olá.
Nesta seção termos 6 aulas onde iremos abordar alguns comandos DDL e entender como criar uma tabela, definir as colunas e tipos de dados, impor algumas restrições, definir integridade dos dados e integridade referencial.
O objetivo dessas aulas é você entender o que a uma tabela e como ela se comporta com os dados. Não vamos explorar todos os recursos existentes em criar uma tabela já que também não é o foco do nosso treinamento.
Mas não posso deixar de discutir esse assunto.
Para que as aulas seja mais dinâmicas e voce possa aproveitar mais, as próximas aulas desse módulo será totalmente prática e com as minhas explicações direta no SSMS e com o audio da minha voz.
Nas não fiquem tristes.
Voltaremos a nos ver no início do módulo 2.
Até lá !!!
Neste módulo vamos apresentar a estrutura de uma instrução SELECT e
explicar detalhadamente cada uma de suas cláusulas.
E o mais importante neste aprendizado é entender como funciona o processamento lógico da instrução.
Você como um bom desenvolvedor em T-SQL deve aprender.
No final desse módulo, vamos realizar uma avaliação com 20 questões
A função da instrução SELECT é recuperar dados de uma ( ou de várias ) tabelas, realizar operações logicas e tratamentos dos dados e apresentar ou retornar os dados.
Mais do que entender o funcionamento da instrução,
A fase do WHERE (ONDE) é uma das fases onde colocamos os predicados ou operadores lógicos para realizar filtros no resultado processado na fase anterior (FROM).
Com o resultado feito pelos predicados ou operadores lógicos nas linhas, somente será enviado para a próxima fase as linhas são avaliadas como verdadeira.
A cláusula WHERE, em certos momentos pode ser opcional como veremos nos exemplos. Sendo opcional em certas instruções SELECT, essa fase no processamento lógico simplesmente é ignorada.
Essa cláusula SELECT que também é noma da principal instrução DML, é responsável de retornar os dado da consulta. Além disso, ele tem um papel de:
Nesta fase, que é uma das últimas do processamento lógico, ele recebe os dados que já foram separados e agrupados nas fases do FROM, WHERE, GROUP BY e HAVING.
Dessa fase em diante vamos apenas preparar os dados para apresentação e retorno dos dados.
Uma outra forma de apresentar os dados é eliminando a repetição de dos mesmo. Isso pode ocorrer quando você seleciona um conjunto de colunas onde temos um grau grande de repetição de dados.
Para uma melhor visualização, podemos usar a cláusula DISTINCT após a instrução SELECT e antes de lista de colunas ou expressão. O DISTINCT é uma subfase da fase SELECT. Podemos dizer que os dados processados na fase SELECT são enviados para a fase DISTINCT.
O DISTINCT recebe os dados da fase SELECT e elimina qualquer tipo de repetição de linha, apresentado somente linhas exclusivas (sem repetição). Para o DISTINCT eliminar as repetições, ele obrigatoriamente deverá ordenar os elementos recebidos do SELECT para identificar as repetições. Com os dado exclusivos e ordenados, o DISTINCT envia os dados para a próxima fase.
Como citei, podemos usar essa instrução para eliminar grandes repetições de dados quando temos um conjunto de poucas colunas no SELECT .
Em alguns casos, o processamento dos dados pelo DISTINCT não terá efeito nenhum. Isso pode ocorrer quando:
Nesses casos, o resultado com a instrução DISTINCT ou sem a instrução será o mesmo.
Podemos obter outras formas de dados distintos sem usar o DISTINCT. Uma delas é usando o GROUP BY.
?? Mas ele é recomendável em cenários de poucas colunas e ele não permite avaliar as expressões e elementos do SELECT.
A expressão TOP permite voce limitar o total de linhas retornado na fase do ORDER BY ou na fase do SELECT. Essa cláusula é um extensão exclusiva do T-SQL e não é padrão SQL ANSI.
Ela aceita duas formas para expressar essa limitação:
No primeiro caso, o valor interior vai determinar a quantidade de linhas absolutas que devem ser retornado, obedecendo os dados retornados na fase anterior a fase TOP.
No segundo caso, temos um valor percentual que vai determinar a quantidade de linhas relativas ao total de linha enviados pela fase anterior a fase TOP.
O uso da cláusula TOP tem um sentido mais óbvio quando usamos a cláusula ORDER BY. Geralmente usamos o TOP para determinar grupos de linhas de destaque como os 10 pedidos mais recentes ou os produtos mais vendidos.
Entretanto a T-SQL permite você utilizar a cláusula TOP sem ORDER BY.
Aprenda a linguagem SQL com o Microsoft SQL SERVER. Conheça o poder do T-SQL com banco de dados que mais cresce.
Pare tudo que está fazendo !!! Venha agora aprender a linguagem SQL com o melhor gerenciador de banco de dados do mercado de tecnologia, segundo relatório da empresa Gartner. O banco de dados da Microsoft é o líder no Quadrante Mágico do Gartner para SGBD Operacional pelo terceiro ano seguido!!
Aprenda a montar consultas e realizar pesquisas da mais simples até as complexas, aplicando os conceitos corretos da maior linguagem para banco de dados relacional.
Mas, por que devo aprender a linguagem SQL ?
Os bancos de dados relacionais são atualmente a maior plataforma de dados em uso no mercado de TI e todos utilizam a linguagem SQL para manipulação de dados. Não conhecer essa linguagem é praticamente ficar fora do mercado de trabalho na área de tecnologia.
Mas quem disse que os banco de dados relacionais são os maiores do mercado?
O conceituado site DB-Engines ( DB-Engines Knowledge Base of Relational and NoSQL Database Management Systems ) classifica os gerenciadores de banco de dados de acordo com a sua popularidade *. Veja os dados :
O site classifica cerca de 345 gerenciadores de banco de dados de diversas categorias. 140 bancos de dados são relacionais.
Os 10 maiores gerenciadores, 6 são relacionais, sendo que os quatro primeiro são relacionais.
A pontuação acumulada dos três primeiros banco de dados é maior que a soma dos pontos de todos os outros gerenciadores de banco de dados.
*Dados de Setembro/2018
Não podemos negar a crescente demanda por novas categorias de banco de dados não-relacionais como os NoSQL, DocumentDB entre outros. Mas temos que avaliar que esses banco são recentes no mercado de TI. O termo NoSQL surgiu em 1998, por exemplo.
Já os banco de dados relacionais nasceram no início década de 70 e o primeiro banco de dados relacional comercial surgiu em 1979.
Vejo que os banco de dados relacionais existirão por um bom tempo no mercado de TI.
Mas já conheço uma linguagem programação, devo conhecer o SQL?
Todas as linguagem de programação tem as suas características, particularidades e forma de trabalho. Linguagem de programação como Java, C, C++, Python, PHP estão entre as mais bem avaliadas em sites de pesquisas.
Mas quando você programa em uma dessas linguagem e tem a necessidade de acessar os dados em um banco de dados relacional, você terá de alguma forma o contato (direto ou não ) com a linguagem SQL para recuperar ou gravar dados em um banco de dados.
Então o SQL deve ser sim a sua linguagem parceira que trabalhará juntamente com a sua linguagem de programação atual.
É o que vou aprender nesse curso para me tornar um profissional em SQL?
Vamos um pouco além dos conceitos clássicos dos treinamentos de SQL que visa a explicar o básico. Se você está aqui vendo esse curso, provavelmente já passou pelo conteúdo de outros cursos ou então irá passar. Aqui, vamos sair do básico para aprender o que é fundamental para o curso. Alguns exemplos:
Quando explicamos o conceito de JUNÇÃO (JOIN), em geral se explica o CROSS JOIN, INNER JOIN e o OUTER JOIN.
Mas você sabe variações de JOIN que existem? EQUI JOIN, NO-EQUI JOIN , SELF JOIN, COMPOSITE JOIN ou MULTI-TABLE JOIN. Ainda temos o APPLY JOIN que é exclusivo para o SQL Server.
Você sabe como armazenar e recuperar dados que estão no idioma Japonês, Árabe ou Tailandês?
Que um conjunto de condições no SQL Server implementa o conceito de curto-circuito considerando o custo de processamento da cada condição.
Explicaremos cada cláusula da instrução SELECT em cada aula. Isso mesmo !! Uma aula para o SELECT, outra aula para o FROM, uma para o WHERE e assim até explicar toda a estrutura do comando.
Como armazenar e consultar corretamente períodos de DATA. E como calcular corretamente o tempo de viagem de avião entre países de fusos horários diferente?
Detalhes dos operadores matemáticos, comparação e lógicos e dicas de utilização.
O que o curso me fornecerá para aprender a linguagem?
Você pode ver pelo painel do curso a carga horária e a quantidade de aulas. Todas elas em vídeo no formato HD (720). Logo abaixo dessa descrição você terá acesso a grade curricular, onde poderá ver cada uma das aulas e visualizar os conteúdos gratuitos. Estou dividindo o curso em Módulos e dentro de cada módulo as seções com as aulas.
Teremos uma seção que explicará como instalar o SQL Server e utilizar a ferramenta SQL Server Management Studio onde executaremos todos os comandos.
Também será fornecido um arquivo com o projeto do curso que conterá diversos scripts com instruções SQL agrupados de acordo com os módulos e as seções. Em cada script terá o conteúdo de cada aula. Com isso você poderá simular os mesmo comandos aplicados na aula.
Ok, você está quase me convencendo, mas por que devo fazer o seu curso?
Aqui eu poderia começar a vender o meu peixe, mas não. O cenário para banco de dados é muito promissor. Não estou falando apenas do SQL para bancos de dados relacionais. De algo maior.
O armazenamento de grandes volumes de dados, a Internet da Coisas e o crescente uso de dispositivos móveis, estão fazendo surgir novas profissões como é o caso de Cientista de Dados com capacidades de analisar Teras, Petas, Exasbytes de dados.
Estamos vivendo a 4ª Revolução Industrial que é justamente o poder de manipular massivas quantidades de dados
Um caminho que não tem volta.
Para isso, precisamos aprender o conceito, precisamos aprender o fundamental. Você tem que aprender um linguagem para processar todos esses dados.
Agora, eu te pergunto. Vamos aprender o poder da linguagem SQL ?
Vamos?
Históricos de alterações:
17/10/2017 - Lançamento do curso SQL SERVER 2017 - Fundamentos profissionais em T-SQL
08/11/2017 - Inclusão de quatro novas aulas na seção 9.
22/01/2018 - Renovação da descrição do curso e inclusão de 17 novas aulas.
14/02/2018 - Inclusão de 3 novas aulas referente a OUTER JOIN.
10/08/2018 - Inclusão de questionários nas seções 5, 6 e 9 no total de 34 perguntas para avaliar seu conhecimentos.