Una sentencia ESQL anidada es una sentencia contenida en otra sentencia.
Observe el fragmento de programa ESQL siguiente:
IF Size > 100.00 THEN SET X = 0; SET Y = 0; SET REVERSE = FALSE; ELSE SET X = 639; SET Y = 479; SET REVERSE = TRUE; END IF;
En este ejemplo, puede ver una sentencia IF individual que contiene la cláusula ELSE opcional. Tanto IF como ELSE contienen tres sentencias anidadas. Las contenidas en la cláusula IF se ejecutan si el operador de mayor que (>) devuelve el valor TRUE, esto es, si el valor de Size es mayor que 100.00, de lo contrario, se procesan las contenidas en la cláusula ELSE.
Muchas sentencias pueden contener expresiones anidadas pero sólo unas cuantas pueden contener sentencias anidadas. La diferencia clave entre una expresión y una sentencia es que una expresión calcula el valor que se utilizará mientras que una sentencia realiza una acción (normalmente cambiar el estado del programa) pero no genera un valor.