Trilha Pleno Trilha

SQL avançado: domínio de CTE

O curso trata de CTEs recursivas no PostgreSQL, construídas sobre a tabela community_comments, o único model autorreferente da aplicação. Mostra por que um carregamento de thread com duas queries deixa de funcionar quando a profundidade não é fixa. Usa o método with_recursive do Rails, com uma âncora e um membro recursivo unidos por UNION ALL. Acrescenta colunas de profundidade e caminho, protege contra ciclos que a foreign key não impede e explica por que CTEs recursivas são sempre materializadas. Termina com CTEs que gravam e o motivo de a aplicação não usar nenhuma.

O que você vai aprender

  • ✓Escrever CTEs recursivas com o método with_recursive do Rails
  • ✓Como a âncora e o membro recursivo rodam rodada a rodada
  • ✓Calcular profundidade e caminho dentro do membro recursivo
  • ✓Interromper ciclos com uma guarda baseada no caminho
  • ✓Por que CTEs recursivas são sempre materializadas e como o custo cresce
  • ✓CTEs que gravam com RETURNING e por que esta aplicação não as usa
Prévia grátis · Aula 1 4 min de leitura

A única coisa que WITH não conseguia fazer

O curso de nível Júnior "ActiveRecord: fundamentos de CTE" fechou a primeira aula com uma promessa. Ele nomeou o que deixou de fora: uma CTE que referencia a si mesma, WITH RECURSIVE, para dados em árvore ou grafo, como um organograma ou as respostas de uma thread de comentários. Ele se chamou de…

Ler a aula completa grátis →

Currículo

7 aulas
Digite para buscar...