4
respostas

DÚVIDA_01_CONSULTAS AVANÇADAS SQL SERVER 2017 /04/ VISÃO

Prezado(a).

Seguem algumas dúvidas na seguinte aula: https://cursos.alura.com.br/course/consultas-sql-server-2017/task/39013

DÚVIDA 01: Foi confusa a explicação da diferença entre sub-consulta e view. Para falar a verdade, sub-consulta não entendi muito bem a idéia e aplicação. Peço que, se possível, enviar uma explicação visual ou vídeo sobre tal.

DÚVIDA 02: No tempo 05:00 da aula, o professor diz que tem duas formas de criar view: 1) por código 2) pelo assistenten

Na aula, ele usa o assistente e chega a tela abaixo. Entretanto, ele utiliza um código de consulta pronto para criar a view no assistente.

Pergunto: 1) como se cria uam view por código e não pelo assistente? 2) qual passo a passo que se faz quando não tem o código de consulta pronto e quer fazer pelo assistente?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

4 respostas

Olá Thiago, não sei se conseguirei lhe explicar mais de forma resumida.

A sub-consulta que ele cita é sobre um select que você controí para consultar dados de uma ou várias tabelas, resumindo é um select dentro de um select. Já a View é uma tabela virtual para visualização de dados atraves de um select que usa com frequencia, por exemplo de vez você ter que toda vez executar o "selec campo1, campo2, campo3 from tabela1 where campo1 = 100" vou cria uma View desse select e apenas o chama como uma tabela virtual, exemplo "select * from view1". Eu dei um exemplo supoer simples, mais imagina um select calabroso que você tem tratamento e quer ustilizar aquilo como consulta em excel ou bi da vida, você cria a view e apenas a chama, ninguém saber o trampo que deu para chamar apenas aquela linha com poucas palavras, rs.

Para criar uma view vou ser bem específico sem entrar nos méritos dos parâmetros:

CREATE VIEW [NOME_VIEW] AS SELECT [CAMPO_1], [CAMPO_2], [CAMPO_3] FROM [TABELA_1] WHERE [CAMPO_1] = 100;

É isso aí espero ter ajudado.

Lucas.

Muito obrigado pela explicação.

Alguém saberia explicar o resto??

Olá Thiago, tudo bem?

Irei criar a mesma view do instutor, utilizando apenas o assistente, para demonstrar como pode ser feito esse processo:

  • No banco de dados onde deseja criar a view, localize Exibições
  • Clique com o botão direito em Exibições e selecione Nova Exibição

Clicando com o botão direito em exibições e selecionando nova exibições

  • Na nova janela que abriu, selecione as tabelas para a criação da view e clique em adicionar

Na janela adicionar tabela, selecionando a tabela de produtos e clicando em adicionar

  • Após adicionar todas as tabelas, clique em fechar e ficará disponível para você, todas as tabelas selecionadas.

Todas as tabelas que foram selecionadas estão disponiveis na nova janela

  • Em cada tabela, selecione os campos que você deseja retornar, neste caso, estou selecionando o campo EMBALAGEM e PREÇO DE LISTA

  • Mesmo criando pelo assistente, o código SQL também é gerado, então você pode realizar a conclusão do código pelo SQL ou continuar pelo assistente:

Depois de selecionar a tabela e o campo, tem uma area para continuar a criar a view pelo assinte e abaixo é gerado também o código SQL

  • Para adicionar a função de agregação, clique com o botão direito no campoPREÇO DE LISTA, e selecione adicionar grupo por:

Clicando com o botão direito em preço de lista e selecionando a opção adicionar agrupar por para criar um novo campo agrupar por

  • Ao selecionar adicionar grupo por, um novo campo será criado, neste novo campo, para a coluna PREÇO DE LISTA, altere o valor para MAX, que é a função de agregação que será utilizada e automaticamente o GROUP BY será aplicado apenas para o campo EMBALAGEM:

Alterando o valor do campo agrupar por para MAX do campo preço de lista

  • Para a coluna PREÇO DE LISTA, no campo ALIAS, altere o valor para MAX_PRECO:

Alterando o valor do campo alias para a coluna prelo de lista

  • Após finalizar o código da VIEW, clique no disquete para salvar, informe um nome para a sua VIEW e clique em OK:

Clicando no disquete no menu superior, na nova janela que abriu, infomando o nome para a view e clicando em OK para salvar

  • Agora é só utilizar a sua VIEW:

Executando a view

Espero ter ajudado e bons estudos!