# wselect command

The wselect BASIC program is a simulation
of the select command that additionally exploits
B-tree indexes.

For example:

```
select entity by name
```
In this example, only one attribute is specified. If there
happens to be an index defined on the attribute referenced by name,
the response is practically immediate, since it can fetch the presorted
B-tree for the requested list. If it were to contain a more complex
expression, such as:

```
select entity by zip by name
```
Again, assuming that indexes are defined on both the zip
and name field, AQL processes the sentence as though the indexes were
not even there.

In addition, AQL does *not* use the indexes
if any `^` or `[` and `]` characters are present in the sentence. In some rare cases, wselect may be faster than the select command.

## See also

- [nselect command](https://d3codex.com/access/nselect-command/)
- [sselect command](https://d3codex.com/access/sselect-command/)
- [wlist command](https://d3codex.com/tcl/wlist-command/)
- [wsort command](https://d3codex.com/tcl/wsort-command/)
- [wsselect command](https://d3codex.com/tcl/wsselect-command/)

---
Source: https://d3codex.com/tcl/wselect-command/ - part of the D3Codex reference.
