Cuando DB2 procesa una consulta, el optimizador de DB2 genera varios planes alternativos para acceder a los datos solicitados. El optimizador estima el coste de ejecución de cada plan y ejecuta el plan que tiene el coste más bajo. Este plan se denomina plan de acceso.
Un gráfico de plan de acceso se compone de nodos y líneas que conectan esos nodos. Los nodos representan orígenes de datos, operadores, sentencias SQL y bloques de consulta. Los nodos puede tener un solo nodo padre, pero pueden tener un número ilimitado de nodos hijos. Las flechas de los bordes indican la dirección del flujo. Normalmente, hay un nodo de tabla en la parte inferior del gráfico y el plan de acceso se lleva a cabo de allí hacia arriba.
Algunas operaciones del plan de acceso como, por ejemplo, las uniones de bucle anidado o las exploraciones de índice, se representan en el gráfico mediante grupos de nodos que se denominan construcciones. Muchas de estas construcciones tienen un nodo de definición que indica la operación. Por ejemplo, el nodo HBJOIN indica que se está realizando una operación de unión híbrida, pero la unión híbrida entera se representa en el gráfico mediante un grupo de nodos. Este grupo de nodos representa todas las demás fuentes de datos y operaciones implicadas en la unión híbrida.
Una sentencia SQL puede estar formada por varias subconsultas, que se representan en el diagrama de plan de acceso mediante bloques de consultas. La subconsulta puede ser una sentencia SELECT, INSERT, UPDATE o DELETE. Una subconsulta puede contener otras subconsultas en las cláusulas FROM o WHERE, o una subselección de la cláusula UNION o UNION ALL. Una subconsulta dentro de otra subconsulta se denomina subconsulta hijo. Una subconsulta que contiene otra subconsulta se denomina subconsulta padre. Esta relación padre-hijo se puede representar mediante una jerarquía de árbol.
Si una subconsulta hace referencia como mínimo a una columna de su subconsulta padre o de las subconsultas padres que están en niveles superiores de la jerarquía de árbol, la subconsulta es una subconsulta correlacionada; de lo contrario, es una subconsulta no correlacionada. Una subconsulta no correlacionada puede ejecutarse al mismo tiempo que la subconsulta padre superior que tampoco está correlacionada. Esta subconsulta de padre más alta se denomina "subconsulta padre de realizar al abrir" en términos de su relación con la subconsulta no correlacionada. La ejecución de una subconsulta correlacionada está vinculada a la ejecución de su subconsulta padre. Estas relaciones entre las ejecuciones relativas de padres e hijos se pueden representar mediante distintas jerarquías de árbol en el gráfico del plan de acceso.