Módulo 3: Relações e grafosAula 12 de 207 minResumo aberto · Vídeo com cadastro grátis

Joins e consultas no estilo relacional no SurrealDB

Por Mauro Mequelussi · Curso gratuito SurrealDB do zero: fundamentos com um CRM · Português (PT-BR)

Resposta direta · O que esta aula resolve

A Aula 12 de 20 ("Joins e consultas no estilo relacional no SurrealDB"), parte do módulo "Relações e grafos" do curso gratuito "SurrealDB do zero: fundamentos com um CRM" na Escola de Aplicativos (ministrado por Mauro Mequelussi), ensina na prática: desmistificamos a ausência do JOIN tradicional do SQL no SurrealDB. Você aprenderá cinco abordagens diferentes para responder a uma mesma pergunta de negócio no CRM, dominando subconsultas com VALUE, correlações com parent, negações lógicas com anti JOINs e consultas elegantes em grafos.

Aula gratuita · Cadastro rápido

Crie sua conta grátis para assistir a esta videoaula em HD

O resumo técnico e os capítulos abaixo são abertos para consulta. Crie sua conta 100% gratuita em segundos para liberar todas as 20 videoaulas em HD, controle automático de progresso, Tutor IA e certificado gratuito verificável.

  • R$ 0 · Sem cartão de crédito
  • Tutor IA tira-dúvidas da aula
  • Certificado gratuito incluso

O que você vai aprender

  • Como estruturar um semi JOIN com subconsultas e por que a cláusula VALUE é indispensável.
  • Como criar subconsultas correlacionadas referenciando o registro externo com a palavra-chave parent.
  • Como implementar um anti JOIN usando NOT IN ou negação (!) no lugar de NOT EXISTS.
  • Como resolver a mesma pergunta navegando diretamente pelas arestas de um grafo.
  • As vantagens de criar relações na escrita para evitar consultas complexas e pesadas na leitura.

Pontos-chave da aula

  • Sem a cláusula VALUE, a subconsulta retorna objetos e a comparação de igualdade com IDs falha silenciosamente.
  • O ponto de exclamação (!) antes de uma subconsulta correlacionada atua como o NOT EXISTS do SQL.
  • O identificador parent permite que a subconsulta acesse campos da consulta que está rodando por fora.
  • Resolver relações na hora da escrita evita dúvidas comuns sobre grão de dados e escolha entre tipos de JOINs.

Capítulos e roteiro técnico da aula

6 capítulos minutados
  1. 00:00

    Consultas relacionais sem o JOIN tradicional

    Entenda por que o SurrealDB não usa o JOIN clássico do SQL e como ele resolve relações na escrita.

  2. 00:48

    Semi JOIN e o papel da cláusula VALUE

    Veja como montar uma subconsulta para filtrar produtos e a importância de usar VALUE para retornar listas planas.

  3. 02:33

    Subconsultas correlacionadas com parent

    Aprenda a correlacionar a consulta interna com o registro externo usando parent e analise o impacto no desempenho.

  4. 03:54

    Anti JOIN para encontrar ausência de dados

    Use NOT IN e o operador de negação (!) no lugar de NOT EXISTS para encontrar produtos sem order bump.

  5. 04:24

    Comparativo: subconsultas versus grafo

    Compare o resultado de JOINs e subconsultas com a simplicidade da navegação por setas no grafo.

  6. 05:18

    Vantagens de resolver relações na escrita

    Entenda como tratar relações na gravação elimina a complexidade de múltiplos tipos de JOINs na leitura.

Momentos de destaque na prática

01:43

O perigo de esquecer a cláusula VALUE

Veja por que uma subconsulta pode retornar vazia sem acusar nenhum erro se você esquecer essa palavra-chave.

02:54

Como funciona a subconsulta correlacionada

Aprenda a referenciar a linha da consulta externa com parent e descubra quando essa abordagem vale a pena.

03:54

Anti JOIN para extrair inteligência de negócio

Descubra como uma consulta simples com negação revelou uma oportunidade imediata de vendas no CRM da Clara.

Notas de aula e guia de estudo

Sem os JOINs tradicionais do SQL, o SurrealDB adota caminhos mais diretos e escaláveis para lidar com relações entre dados. Nesta aula, exploramos cinco formas de responder à mesma pergunta de negócio no CRM da Clara: quais produtos possuem order bump no checkout. Você vai ver na prática como substituir a complexidade relacional clássica por subconsultas eficientes e travessias diretas em grafo.

O que você vai aprender

  • Como estruturar um semi JOIN com subconsultas e por que a cláusula VALUE é indispensável.
  • Como criar subconsultas correlacionadas referenciando o registro externo com a palavra-chave parent.
  • Como implementar um anti JOIN usando NOT IN ou negação (!) no lugar de NOT EXISTS.
  • Como resolver a mesma pergunta navegando diretamente pelas arestas de um grafo.
  • As vantagens de criar relações na escrita para evitar consultas complexas e pesadas na leitura.

Pontos-chave

  • Sem a cláusula VALUE, a subconsulta retorna objetos e a comparação de igualdade com IDs falha silenciosamente.
  • O ponto de exclamação (!) antes de uma subconsulta correlacionada atua como o NOT EXISTS do SQL.
  • O identificador parent permite que a subconsulta acesse campos da consulta que está rodando por fora.
  • Resolver relações na hora da escrita evita dúvidas comuns sobre grão de dados e escolha entre tipos de JOINs.

Conceitos e ferramentas abordados nesta aula

SurrealQLSubconsultasSemi JOINAnti JOINCláusula VALUEUso de parentConsultas em grafoSurrealDBSQLSupabase

Perguntas frequentes sobre esta aula

Nesta aula do módulo "Relações e grafos" na Escola de Aplicativos, você aprende de forma prática: Como estruturar um semi JOIN com subconsultas e por que a cláusula VALUE é indispensável.; Como criar subconsultas correlacionadas referenciando o registro externo com a palavra-chave parent.; Como implementar um anti JOIN usando NOT IN ou negação (!) no lugar de NOT EXISTS.; Como resolver a mesma pergunta navegando diretamente pelas arestas de um grafo..