Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Nested CTEs identation problem

Aperta
#290 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 8 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
postgresql, sql
Ambito
databases, tooling

Direzione di ricerca

Inizia eseguendo l'esempio di CTE annidato dell'issue tramite pgFormatter e confronta la relativa indentazione con la struttura prevista. Segui il percorso del formatter che gestisce le clausole WITH annidate, quindi verifica che i CTE fratelli e le relative istruzioni SELECT successive mantengano un'indentazione che rifletta il loro ambito.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

The structure like this:

WITH hello_world AS (
  WITH hello_another_world AS (
    WITH hello_third_world AS (
      SELECT
      FROM
      WHERE
      ORDER BY
    ), hello_third_world_again AS (
      SELECT
      FROM
      WHERE
      ORDER BY
    )
    SELECT
    FROM
    WHERE
    ORDER BY
  ), hello_another_world_again AS (
    SELECT
    FROM
    WHERE
    ORDER BY
  )
  SELECT
  FROM
  WHERE
  ORDER BY
)
SELECT
FROM
WHERE
ORDER BY

Gets formatted as:

WITH hello_world AS (
  WITH hello_another_world AS (
    WITH hello_third_world AS (
      SELECT
      FROM
      WHERE
      ORDER BY
),
      hello_third_world_again AS (
        SELECT
        FROM
        WHERE
        ORDER BY
)
        SELECT
        FROM
        WHERE
        ORDER BY
),
        hello_another_world_again AS (
          SELECT
          FROM
          WHERE
          ORDER BY
)
          SELECT
          FROM
          WHERE
          ORDER BY
)
        SELECT
        FROM
        WHERE
        ORDER BY

It is kind of a problem since nested CTEs tend to be used in complex queries in which indentation is a hint to the CTEs scope visibility.

Lingua principale
PLpgSQL
Stelle
2k
Fork
121
Merge medio
5g 10h
PR unite (30g)
9

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Nessun modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di darold/pgFormatter

Tutte le issue di darold/pgFormatter

Issue simili

Altre issue su Databases

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.