La Red de Conocimientos Pedagógicos - Currículum vitae - Llamadas recursivas en mysql

Llamadas recursivas en mysql

Primero, cree un organigrama familiar.

Inserte algunos datos de prueba:

Unir todo es una declaración de inicialización, que solo se ejecutará una vez para encontrar esta fila de registros del departamento de desarrollo.

A continuación, la siguiente combinación utilizará la declaración inicializada para ir a la tabla de organización original, obtener todos los subdepartamentos del departamento de desarrollo y luego usar estos subdepartamentos para unirse a los departamentos inferiores.

Los resultados de la implementación son los siguientes:

Si desea consultar todos los departamentos superiores del departamento de desarrollo de la siguiente manera, solo necesita modificar la declaración de consulta recursiva anterior:

Los resultados de la implementación son los siguientes:

La expresión de tabla común recursiva "temp" no puede contener ambas

funciones de agregación o que no sean de ventana en un bloque de consulta recursivo

Base de datos relacional

Mysql tiene límites en la profundidad de recursividad. La profundidad de recursividad predeterminada es 1000.

Puedes mostrar variables como "cte_max_recurrence_ Depth"; discute detenidamente

También puedes mostrar la recursividad por el tiempo máximo de ejecución de la instrucción select, mostrando la variable Li Le' max _ejecución_ tiempo';