sql >> Base de Datos >  >> RDS >> Sqlserver

Muestra la relación padre-hijo cuando padre e hijo están almacenados en la misma tabla

prueba esto...

SELECT a.ID, a.Name, b.Name AS 'ParentName'
FROM TABLE AS a LEFT JOIN TABLE AS b on a.ParentID = b.ID

Con la unión izquierda, la consulta no encontrará nada para unirse a NULL y devolverá un espacio en blanco para ParentName columna.

EDITAR:

Si no desea que la columna 'Principal' esté en blanco, pero desea mostrar un guión '-', utilice esta consulta.

SELECT a.ID, a.Name, COALESCE(b.Name,'-') AS 'ParentName'
FROM TABLE AS a LEFT JOIN TABLE AS b on a.ParentID = b.ID