Olá! Boas-vindas!
Vamos iniciar mais um curso na formação de Big Query.
Audiodescrição: Victorino, instrutor do curso, é uma pessoa de pele clara e olhos escuros. Seus cabelos são curtos, lisos e grisalhos. Tem um cavanhaque também grisalho e está vestindo uma camiseta preta. No fundo, tem uma parede iluminada por luz de LED azul-claro.
Este curso dará um foco especial nas funções de texto e de data. Aprenderemos tópicos essenciais, como:
Também dedicaremos atenção especial à manipulação e formatação de datas. Inicialmente, exploraremos as diferenças cruciais entre date time e timestamp, e como trabalhar com cálculo de datas. Abordaremos também a extração de componentes específicos de uma data, como extrair o mês, o ano, a semana, o dia. Veremos como formatar uma saída de data em diversos formatos. E, finalmente, entenderemos o que é uma Data Unit.
Para garantir que o aprendizado deste curso seja o mais aplicável possível, sempre utilizaremos a base de dados da Beleza Verde, que é uma empresa fictícia que se destaca no setor da beleza sustentável, e que fomos apresentados a ela no curso anterior da formação. Através deste estudo de caso, você terá a oportunidade de aplicar diretamente os conceitos que serão aprendidos em situações reais.
Ao concluir este curso, você terá adquirido uma série de habilidades supervalorizadas no mercado de trabalho, e estas competências são cruciais em diversas áreas, desde análise de dados, business intelligence e até desenvolvimento de software. Dominar e aprender estas técnicas que vamos ensinar ampliará significativamente as suas oportunidades de carreira.
Prepare-se para encarar este desafio conosco.
Vejo você nos próximos vídeos.
Um grande abraço!
Vamos começar mais um curso de Big Query. Antes de iniciar, precisamos ajustar a base de dados da Beleza Verde para podermos prosseguir com os vídeos deste curso. É o que faremos agora, neste vídeo.
Nas atividades desta aula, vocês encontrarão um link para fazer o download de um arquivo. Façam o download deste arquivo na máquina local de vocês e abram esse arquivo com um editor de texto. Observem que fazemos várias modificações nas tabelas da base de dados da Beleza Verde para podermos prosseguir com os exercícios práticos deste curso.
É importante que vocês façam uma substituição do:
Devemos fazer isso para o projeto e para o conjunto de dados, ou seja, o nome de tabelas que você está usando na sua base de dados da Beleza Verde, no seu ambiente do Big Query. Essa base de dados da Beleza Verde foi criada na aula 1 do curso anterior desta formação de Big Query. Modifiquem esse nome do projeto, nome do conjunto de dados e, eventualmente, se vocês tiverem criado tabelas com nomes diferentes, o nome das tabelas.
Observação: Se você não tem o banco da Beleza Verde na sua máquina, volte para a aula 1 do curso anterior e siga todos os passos que estão lá registrados para criar a base. Depois, continue esse curso a partir desse ponto.
Relembrando, para verificar qual é o seu projeto e seu conjunto de dados no Big Query nós temos na parte superior esquerda, ao lado da logo "Google Cloud", o nome do projeto. Na coluna "Explorer" (Explorador), também à esquerda, temos o nome do conjunto de dados e das tabelas. Após essa modificação, alteraremos a base em algumas etapas.
Na primeira etapa, copiaremos as sete primeiras linhas, que são UPDATES
. Voltaremos para o projeto aberto Big Query, onde criamos um novo script e colamos aqueles sete updates. Após colarmos, selecionamos e executamos.
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET nome = 'ana beatriz' WHERE id_cliente = 1;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET nome = 'HECTOR ALVES' WHERE id_cliente = 8;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET nome = 'olívia&gomes' WHERE id_cliente = 15;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET nome = 'Quênia Soares' WHERE id_cliente = 17;
UPDATE curso-big-query-12339.belleza_verde_vendas.produtos SET nome = ' Hidratante Corporal' WHERE id_produto = 7;
UPDATE curso-big-query-12339.belleza_verde_vendas.produtos SET nome = 'Creme para as Mãos ' WHERE id_produto = 4;
UPDATE curso-big-query-12339.belleza_verde_vendas.produtos SET nome = '----Óleo Essencial Lavanda' WHERE id_produto = 1;
Na metade inferior da tela, teremos o resultado. Uma vez que os sete estiverem com o status confirmado, podemos voltar ao script para próxima etapa. Agora copiaremos desde a oitava linha, com o ALTER TABLE
até o final do segundo bloco de UPDATES
.
ALTER TABLE curso-big-query-12339.belleza_verde_vendas.clientes ADD COLUMN cep STRING;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '30190010' WHERE id_cliente = 1;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '35400-000' WHERE id_cliente = 8;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '39100-000' WHERE id_cliente = 17;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '36010011' WHERE id_cliente = 15;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '38400-012' WHERE id_cliente = 27;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '80010020' WHERE id_cliente = 11;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '86010-150' WHERE id_cliente = 7;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = 'CEP 87013-060' WHERE id_cliente = 1;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '84010-350' WHERE id_cliente = 28;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '85810-030' WHERE id_cliente = 24;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '85851-000' WHERE id_cliente = 3;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = 'CEP 83203000' WHERE id_cliente = 5;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '85010-000' WHERE id_cliente = 20;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '86800-010' WHERE id_cliente = 12;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '85900-220' WHERE id_cliente = 29;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '87501-030' WHERE id_cliente = 25;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '40010-000' WHERE id_cliente = 9;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '40100-000' WHERE id_cliente = 26;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '40230-001' WHERE id_cliente = 6;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '40301-110' WHERE id_cliente = 4;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '40450-000' WHERE id_cliente = 10;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '41100-000' WHERE id_cliente = 16;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '41301-110' WHERE id_cliente = 19;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '01001-000' WHERE id_cliente = 21;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '01310-000' WHERE id_cliente = 23;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '01530-010' WHERE id_cliente = 18;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '20010-000' WHERE id_cliente = 14;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '22010-000' WHERE id_cliente = 22;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '22290-010' WHERE id_cliente = 13;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '23020-090' WHERE id_cliente = 30;
UPDATE curso-big-query-12339.belleza_verde_vendas.clientes SET cep = '85851-000' WHERE id_cliente = 2;
Voltamos para o Big Data e, se quisermos, podemos substituir os UPDATES
anteriores. Então, no script que já criamos e que está com os UPDATES
selecionados, pressionaremos "Ctrl + V" para colar o novo bloco do código. Em seguida, clicamos no botão "Executar", na barra superior do script, para rodar os novos UPDATES
.
[Tela com animação de carregamento com sons de circuitos]
Após todos os comandos serem executados, voltaremos ao script e copiaremos apenas o DELETE FROM
, que está abaixo do código anterior. Voltamos ao Big Data e substituímos todo o código anterior que estava no script por essa nova linha.
DELETE FROM curso-big-query-12339.belleza_verde_vendas.vendas WHERE data = '2022-01-01';
Após executarmos mais esse comando, voltamos ao script e copiamos as próximas duas linhas: uma com ALTER TABLE
e a outra com um UPDATE
. Voltamos para o Big Data para colar esse código no lugar do DELETE
e executá-lo.
ALTER TABLE curso-big-query-12339.belleza_verde_vendas.vendas ADD COLUMN DATA_AUX TIMESTAMP;
UPDATE curso-big-query-12339.belleza_verde_vendas.vendas SET DATA_AUX = TIMESTAMP(data) WHERE 1=1;
Por fim, copiaremos as últimas três últimas linhas e voltaremos ao Big Data para repetir o processo de execução.
ALTER TABLE curso-big-query-12339.belleza_verde_vendas.vendas ADD COLUMN data_unix INT64;
UPDATE curso-big-query-12339.belleza_verde_vendas.vendas SET data_unix = UNIX_SECONDS(DATA_AUX) WHERE 1=1;
ALTER TABLE curso-big-query-12339.belleza_verde_vendas.vendas DROP COLUMN DATA_AUX;
Conseguimos efetuar todas as modificações necessárias para podermos prosseguir com este curso. É importante que vocês executem o script passo a passo. Não executem o script completo, pois ele não funcionará corretamente.
Quando falamos de funções, estamos basicamente discutindo como elas se relacionam com diferentes tipos de dados. E por que isso é importante? Porque, na maioria das vezes, as funções que utilizamos estão diretamente ligadas aos tipos de dados com os quais estamos trabalhando. Então, vamos mergulhar nos tipos de dados que o Big Query oferece.
No Big Query, usaremos a mesma conta e banco de dados da Beleza Verde, que exploramos no curso anterior. Se abrirmos uma das tabelas, por exemplo, a tabela "produtos", veremos na coluna "Tipo" definição dos campos todos os tipos de dados de cada campo da tabela produto.
Note que cada campo está ligado a um tipo de dado específico. Temos, por exemplo, INTERGER
, que representa números inteiros, temos STRING
. E até mesmo esse campo, materiasprimas
, que se lembram no curso anterior, era do tipo ARRAY
de strings, apesar de aparecer como STRING
.
Entender esses tipos de dados no Big Query é muito importante quando o assunto é função, porque eles estão sempre relacionados aos tipos de dados, às funções. Temos uma variedade enorme de tipos de dados no Big Query, mas vamos agora, neste vídeo, dar uma olhada especial nos mais importantes.
Começaremos com dois tipos: Int64 e Foat64. No Big Query, usamos o Int64
e o Float64
para guardar números, mas de maneiras diferentes, com propósitos distintos e precisões numéricas variadas.
O int64
guarda números inteiros, aqueles que não têm casas decimais. Ele varia de um número negativo gigantesco até um número positivo, igualmente enorme. Ele é perfeito para guardar dados sólidos, como, por exemplo, tipos de contagem, identificadores e outras coisas mais.
O float64
é usado para números decimais, o que chamamos de uma precisão dupla, com bastante exatidão. Ele é indicado para coisas que precisam de precisão decimal, como valores financeiros de moedas ou algumas medidas científicas.
Temos também o Bool e o Numeric. Cada um tem a sua característica diferente. O bool
é aquele tipo booleano (lógico). Ele só pode ter o valor verdadeiro ou falso, tipo um interruptor, ligando ou desligando. Ele é muito usado, por exemplo, para indicar se uma pessoa funcionária está ou não empregada.
Já o numeric
é para números decimais bem precisos. Pense naqueles valores financeiros que não podem ter erro nenhum. No Big Query, ele pode ter uma precisão de até 38 dígitos. Então dá para imaginar o nível de detalhe que conseguimos alcançar. Ele é ideal para dados financeiros ou científicos que precisam de muita exatidão.
Agora falando das strings e bytes. Eles são, respectivamente, usados para guardar texto e dados binários.
O string
, então, é para guardar um texto, que seria qualquer sequência de caracteres Unicode, sem limite de tamanho. Então dá para escrever um livro, se quiser, dentro do campo. É perfeito para guardar qualquer tipo de informação textual, como, por exemplo, o nome, endereço, e-mails, descrições. E o bytes
é para dados binários. O campo bytes
também não tem limite de tamanho. Ele é ótimo para guardar coisas que não são textos, como imagens ou arquivos compactados.
Não podemos esquecer desses outros dois tipos, o timestamp e o datetime. Eles são essenciais para lidar com números específicos no tempo,e cada um tem o seu jeito de tratar isso.
O timestamp
é o tipo que guarda o momento exato, incluindo data e hora. Elenão se preocupa com o fuso horário, porque é universal. Já o datetime
é o mesmo, só que guarda a data local, sem se relacionar aos fusos horários.
E para encerrar nossos tipos com "chave de ouro", temos dois tipos mais avançados, que são o geographic e as estruturas complexas, como strucs e arrays. O geographic
é para aquele dado espacial, ou seja, um dado no mapa.
Esse dado pode ser um ponto (local preciso) no mapa, uma área, que chamamos de um polígono, ou até mesmo uma linha, por exemplo, uma linha de rota entre um ponto e outro traçada no mapa. Você representa tudo isso por dados geográficos.
Já os strucs
é para queremos juntar várias informações diferentes, mas relacionadas em um único ponto. Digamos que queira guardar em um único campo todos os dados do endereço de uma pessoa cliente, como, por exemplo: a rua, o número, o apartamento, a cidade, o estado, e assim por diante. Já os arrays
, vimos inclusive no curso anterior, é quando tem uma lista de coisas do mesmo tipo, tudo organizado em uma única célula da tabela.
Resumo dos tipos de dados:
- Int64: Inteiro cujos valores variarn de 10 (—19) e 10 (+19);
- Float64: Equivalente ao Int64 mas para números decimais;
- Bool: Valores lógicos (Verdadeiro ou Falso);
- Numeric: Números com 38 dígitos de precisão e 9 dígitos decimais;
- String: Sequências e caracteres Unicode (texto);
- Bytes: Sequências de caracteres não Unicode (dados binários);
- Timestamp: Representa um ponto específico no tempo;
- Datetime: Representa uma data e hora dentro do calendário;
- Geography: Representa pontos, linhas ou polígonos com dados geoespaciais;
- Struc ou Array: Representa um valor em JSON.
Enfim, esses são os tipos mais importantes do Big Query. Neste curso, vamos tratar de funções específicas para strings
e datas. E quando falamos em datas, estamos falando do datetime
e do timestamps
.
Até o próximo vídeo.
O curso Google BigQuery: dominando Strings e Data possui 164 minutos de vídeos, em um total de 59 atividades. Gostou? Conheça nossos outros cursos de SQL e Banco de Dados em Data Science, ou leia nossos artigos de Data Science.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.