GeeksforGeeks (Español)

Las expresiones de tabla común (CTE) se introdujeron en SQL estándar con el fin de simplificar varias clases de consultas SQL para las que una tabla derivada era simplemente inadecuada. CTE se introdujo en SQL Server 2005, la expresión de tabla común (CTE) es un conjunto de resultados con nombre temporal al que puede hacer referencia dentro de una instrucción SELECT, INSERT, UPDATE o DELETE. También puede usar un CTE en crear una vista, como parte de la consulta SELECT de la vista. Además, a partir de SQL Server 2008, puede agregar un CTE a la nueva instrucción MERGE.,

Usando el CTE –
podemos definir CTEs agregando una cláusula WITH directamente antes de SELECT, INSERT, UPDATE, DELETE o MERGE. La cláusula WITH puede incluir una o más CTEs separadas por comas. Se puede seguir la siguiente sintaxis:

] ::=cte_name )]AS (cte_query) 

después de definir su cláusula WITH con los CTEs, puede hacer referencia a los CTEs como haría con cualquier otra tabla. Sin embargo, puede hacer referencia a un CTE solo dentro del ámbito de ejecución de la instrucción que sigue inmediatamente a la cláusula WITH., Después de ejecutar su declaración, el conjunto de resultados de CTE no está disponible para otras declaraciones.

crear una expresión recursiva de tabla común –
Un CTE recursivo es aquel que se hace referencia a sí mismo dentro de ese CTE. El CTE recursivo es útil cuando se trabaja con datos jerárquicos, ya que el CTE continúa ejecutándose hasta que la consulta devuelve toda la jerarquía.

un ejemplo típico de datos jerárquicos es una tabla que incluye una lista de empleados. Para cada empleado, la tabla proporciona una referencia al gerente de esa persona. Esa referencia es en sí misma un ID de empleado dentro de la misma tabla., Puede utilizar un CTE recursivo para mostrar la jerarquía de los datos de los empleados.

si un CTE se crea incorrectamente, puede entrar en un bucle infinito. Para evitar esto, la sugerencia MAXRECURSION se puede agregar en la cláusula OPTION de la instrucción principal SELECT, INSERT, UPDATE, DELETE o MERGE.,

se crea una tabla:

Después de crear la tabla Employees, se crea la siguiente instrucción SELECT, precedida por una cláusula WITH que incluye un CTE llamado cteReports:

por lo tanto, los CTEs pueden ser una herramienta útil cuando necesita generar conjuntos de resultados temporales a los que se puede acceder en una instrucción SELECT, INSERT, UPDATE, DELETE o MERGE.

Attention reader! No dejes de aprender ahora. Obtenga todos los conceptos importantes de CS Theory para entrevistas SDE con el curso de CS Theory a un precio amigable para los estudiantes y prepárese para la industria.,

Article Tags :

DBMS
SQL

Practice Tags :

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *