# Node Variables

Node variables are data elements that are accessible and applicable only within a specific flow, and only after the node has been executed - for example, to access the result that it produced.&#x20;

These variables serve to temporarily store information, facilitate calculations, or control the flow of execution within the scope of a particular node. Unlike [flow local variables](local-flow-variables), which are accessible across the entire flow, node variables have a limited scope and are typically used to store intermediate results or contextual information relevant to a specific node's operation. They help in managing data efficiently and maintaining the integrity of the flow by encapsulating data within the appropriate context, thereby enhancing readability, modularity, and maintainability of the flow design.

Here is an example:

<figure><img src="https://3477030876-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYK40zKr4ZyVfqCRAUI9t%2Fuploads%2FlmpQII6f6rKbCoUn0eos%2Fimage.png?alt=media&#x26;token=fc9eeff1-3f27-48b9-9d5b-7fff1d752aea" alt=""><figcaption><p>Nodes</p></figcaption></figure>

Here, the selectBooks [database query executor](../nodes/connectors/database-query-executor) node produces a new node variable, which contains the results of the query. This variable is not available to the Assign1 node, but is available to the Assign2 node.

The type of a node variable depends on the type of its node. Please refer to the [nodes](../nodes) specification for more details.&#x20;
