# sql

Prism users can execute sql queries using the `hooks.sql()` function. This function takes three arguments:

1. `adapter_name: str`: the adapter with which to run the SQL query. This should match the adapter name in `profile.yml`.
2. `query: str`: the SQL query as a string
3. `return_type: Optional[str]`: the return type for the SQL query. The default value is `None`. This simply returns the query data as a list. Other valid options include:
   * `pandas` if you want to return the data as a Pandas DataFrame

```python
def run(self, tasks, hooks):
    hooks.sql(
        adapter_name="...",
        query="...",
        return_type="pandas"
    )
```

The configurations for these adapters need to be specified in [`profile.yml`](https://docs.runprism.com/v0.2.1/fundamentals/config-files/profile-yml), and they are covered in more detail next.
