Recap - Self Join
Parte de la sección Fundamentos del Journey de SQL de Coddy. Lección 47 de 72.
Desafío
DifícilTablas y columnas disponibles:
<strong>friends</strong>:<strong>id</strong>,<strong>name</strong>,<strong>friend_id</strong>
Para cada persona en la tabla friends, encuentra todas las conexiones de amigos de amigos que tengan. Una conexión de amigo de amigo ocurre cuando la persona A es amiga de la persona B, quien a su vez es amiga de la persona C. Muestra estas conexiones en tres columnas:
friend1: la persona de origenfriend2: su amigo directofriend3: el amigo de su amigo
Reglas:
- No incluyas casos donde
friend3sea la misma persona quefriend1 - Ordena los resultados por el nombre de
friend1en orden descendente
Ejemplo: Si Alice es amiga de Bob, y Bob es amigo de Carol, después Alice-Bob-Carol sería una conexión válida de amigo de amigo.
Pruébalo tú mismo
-- Une la tabla consigo misma dos veces para que una fila contenga una cadena de tres personas
SELECT ____ AS friend1, ____ AS friend2, ____ AS friend3
FROM friends f1
JOIN friends f2 ON ____
JOIN friends f3 ON ____
-- Descarta las cadenas que vuelven en bucle a la persona de la que partieron
WHERE ____
ORDER BY ____ DESC;Todas las lecciones de Fundamentos
4More Keywords
The IN keywordThe BETWEEN keywordThe LIKE keywordThe AS keywordRecap - Cellphone Models2Conditions
Conditions BasicsThe AND keywordThe OR keywordThe NOT keywordMultiple Conditions CombinedParenthesisBooleans5Arithmetic Operations
Mathematical OperatorsMathematical ColumnsThe Modulo OperationThe ROUND() Function3Specific Return Format
Null valuesSort Results Part 1Sort Results Part 2Recap - Cyber Security FirmLimit number of recordsRecap - Vehicle Factory6Intro Challenges
Recap - Parliamentary ElectionRecap - Police Criminal ArrestRecap - Bar Beverage ContainerRecap - Engineer new columnsPractica por tu cuenta: Playground de SQL