DEV Community

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

Posted on

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

Top comments (0)