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 executadas se o operador > (maior que) retornar o valor TRUE (ou seja, se 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.