Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Clausula With para criar mais de uma tabela

Teria como criar varias tabelas dentro de uma clausula With, para posteriormente usar elas fazendo joins?

1 resposta
solução!

Oie, Pablo! Tudo joia?

Sim, é possível. Cada subconsulta pode ser tratada como se fosse uma tabela temporária, e você pode utilizá-las posteriormente em joins ou outras operações na consulta principal.

Para te inspirar, segue um código de exemplo:

WITH
  vendas_faturamento AS (
    SELECT
      id_venda,
      id_produto,
      id_cliente,
      DATA,
      (quantidade * preco) AS faturamento
    FROM
      curso-big-query-12339.belleza_verde_vendas.vendas
  ),
  clientes_info AS (
    SELECT
      id_cliente,
      nome_cliente,
      email
    FROM
      curso-big-query-12339.belleza_verde_vendas.clientes
  )
SELECT
  vf.id_venda,
  vf.id_produto,
  ci.nome_cliente,
  vf.DATA,
  vf.faturamento
FROM
  vendas_faturamento vf
JOIN
  clientes_info ci
ON
  vf.id_cliente = ci.id_cliente
WHERE
  vf.faturamento >= 600
LIMIT
  10;

Sobre o exemplo, foi criado 2 sub consultas: vendas_faturamento e clientes_info. Depois, veio o uso do JOIN entre essas duas sub consultas na consulta principal. Isso permite organizar e reutilizar partes da consulta de forma mais eficiente.

Espero ter te auxiliado e qualquer dúvida, compartilhe no fórum.

Até mais, Pablo!