DEV Community

Cover image for Desvendando SQL: Views
Cristian Magalhães
Cristian Magalhães

Posted on

1

Desvendando SQL: Views

Eae gente bonita, tudo bem com vocês? Seguindo a revisão de SQL, dessa vez vamos falar sobre Views, então pega um cafezinho e vamobora!

O que é?

Podemos chamar uma view de “tabela virtual”, por ser criada com base em uma query definida no momento da sua criação e toda vez que a view é consultada a query é rodada novamente trazendo o resultado da query definida na sua criação.

Como usar

Antes de começar vou deixar o aqui o link com os scripts para a criação do banco e também o seu diagrama abaixo:

Image description

Vamos criar uma view para ver todas as tarefas pendentes, para isso vamos usar o SQL abaixo:

CREATE OR REPLACE VIEW 
    user_pending_tasks --nome da view
AS -- após o as é inserido o SQL que irá alimentar essa view
    SELECT 
        u."name", 
        t.description, 
        t.id AS "todo id", 
        t.status 
    FROM 
        users u 
        INNER JOIN todos t ON t.user_id = u.id 
    WHERE 
        t.status = 'pending'
Enter fullscreen mode Exit fullscreen mode

Após rodarmos esse script a view será que criada no nosso banco de dados e se consultarmos também o nosso diagrama poderemos ve-lá também.

Image description

Com a nossa view criada vamos executar da seguinte forma:

SELECT * FROM user_pending_tasks;
Enter fullscreen mode Exit fullscreen mode

Então teremos o seguinte resultado:

Image description

Caso algum todo seja atualizado para completed ou qualquer outro status diferente de pending ao rodar a view novamente, o resultado mostrado será alterado.

Você também pode atualizar e até mesmo excluir uma view usando o comando DROP VIEW e ALTER VIEW.

Espero ter ajudado a entender o conceito das views e também ter dado uma base para saber quais caminhos percorrer agora e quando usa-lá.


Se chegou até aqui, me segue la nas redes vizinhas.

thank you dog

Sentry blog image

How I fixed 20 seconds of lag for every user in just 20 minutes.

Our AI agent was running 10-20 seconds slower than it should, impacting both our own developers and our early adopters. See how I used Sentry Profiling to fix it in record time.

Read more

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Explore a trove of insights in this engaging article, celebrated within our welcoming DEV Community. Developers from every background are invited to join and enhance our shared wisdom.

A genuine "thank you" can truly uplift someone’s day. Feel free to express your gratitude in the comments below!

On DEV, our collective exchange of knowledge lightens the road ahead and strengthens our community bonds. Found something valuable here? A small thank you to the author can make a big difference.

Okay