Dúvida com SQL Join

Boa tarde amigos, sei da utilidade do join quando envolve mais de uma tabela, mas estou ajudando a desenvolver um projeto (que foi inciado por outra pessoa) e nele existem alguns métodos no DAO, que utilizam join na query, porém são joins direcionados a colunas da mesma tabela, e não de outras, alguém pode me explicar o porque disso?

Talvez seja um relacionamento hierarquico. Por exemplo, imagine a modelagem de uma tabela Pasta, que possui um id e um nome. Como relacionar uma pasta com suas subpastas e vice-e-versa? Cria-se um autorelacionamento apontando para o id da pasta pai, que é referente ao ID da própria tabela Pasta.

table Pasta (
    id PK,
    nome varchar,
    id_pasta_pai FK Pasta(id)
)

Com isso, várias pastas podem ter 0 ou 1 pasta pai, e uma pasta pode ter 0 ou N pastas filhas.

1 curtida

Agora tudo faz sentido kkkk, obrigado pela explicação!