Red de conocimiento informático - Problemas con los teléfonos móviles - ID de pregunta SQL, nombre, pid (1, a, 0) Hay los siguientes datos: 2, b, 1 3, c, 1 4, d, 1 5, e, 2 6, f, 5 7, gramo,

ID de pregunta SQL, nombre, pid (1, a, 0) Hay los siguientes datos: 2, b, 1 3, c, 1 4, d, 1 5, e, 2 6, f, 5 7, gramo,

Utilice la consulta recursiva de la expresión de la tabla pública para obtener de forma recursiva los datos en Admin_Department. Obviamente, todos los departamentos deben recuperarse según los niveles superior y subordinado del departamento.

El proceso de ejecución debería ser así (pid es la identificación del departamento superior, el significado de identificación principal):

Primero saque los datos de pid=1, que es bajo el departamento a Todos los departamentos de primer nivel, es decir, 2, b, 1 3, c, 1 4, d, 1

Luego tome recursivamente los departamentos debajo del departamento b, c, d, seguido de 5 , e, 2 6, f, 5 7, g,...

Baja y elimina todos los departamentos bajo el departamento a.

Después de sacar todo, queda así:

id nombre pid

2 b 1

3 c 1

4 d 1

5 e 1

6 f 1

7 g 1

Porque todos son 1, a, 0 Todos los departamentos bajo , por lo que sus pids son todos 1.

Si aún no lo tienes claro, echa un vistazo a la información sobre CTE (Common Table Expression). Es una técnica más útil y se recomienda dominarla.