Uma instrução aninhada ESQL é uma instrução contida em outra instrução.
Considere o seguinte fragmento de programa ESQL:
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;
Neste exemplo, você pode ver uma única instrução IF contendo a cláusula ELSE opcional. Ambos IF e ELSE podem conter três instruções aninhadas. As instruções que estão na cláusula IF serão processadas se o operador > (maior que) retornar o valor TRUE (isto é, se o Tamanho tiver um valor maior que 100.00); caso contrário, aquelas que estão na cláusula ELSE serão processadas.
Muitas instruções podem ter expressões aninhadas nelas, mas apenas algumas podem ter instruções aninhadas. A diferença-chave entre uma expressão e uma instrução é que uma expressão calcula um valor a ser utilizado, enquanto uma instrução desempenha uma ação (geralmente alterando o estado do programa) mas não produz um valor.