> ## Documentation Index
> Fetch the complete documentation index at: https://docs.allium.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Loans

Loan events are when a borrower requests a loan from a lending protocol.

The `<chain>.lending.loans` table contains borrow events from Aave v1, v2, v3 and Compound v2 and v3 and Morpho Blue protocols, consolidated into a single table for easy querying.

This table tracks all borrowing activities across major lending protocols, providing comprehensive information about loan amounts, tokens, borrowers, and transaction details.

## Sample Query

Total borrowers of UDSC (by contract address) on Ethereum blockchain in the past 90 days.

```
select
    date(block_timestamp) as date,
    project, 
    count(distinct borrower_address) as borrowers,
    sum(usd_amount) as usd 
from ethereum.lending.loans
where token_address = '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48'
and block_timestamp  >= current_date - 90
group by all
order by date desc
```

Most commonly borrowed tokens on Ethereum blockchain by borrowers count.

```
select
    token_address,
    token_name,
    count(distinct borrower_address) as borrowers,
    count(1) as borrow_count,
    sum(usd_amount) as usd 
from ethereum.lending.loans
group by all 
order by borrowers desc
```

### Table Columns

Unique Key: `unique_id`

| Column                     | Data Type         | Description                                                            |
| -------------------------- | ----------------- | ---------------------------------------------------------------------- |
| project                    | VARCHAR           | Name of the lending project                                            |
| protocol                   | VARCHAR           | Underlying protocol that the lending protocol is utilising             |
| lending\_event             | VARCHAR           | Type of lending event (always 'borrows' for this table)                |
| event\_name                | VARCHAR           | Name of the event                                                      |
| market\_address            | VARCHAR           | Address of the lending market                                          |
| borrower\_address          | VARCHAR           | Address of the borrower                                                |
| target\_address            | VARCHAR           | Address of the target recipient of the borrow                          |
| token\_address             | VARCHAR           | Address of the token borrowed                                          |
| token\_name                | VARCHAR           | Name of the token borrowed                                             |
| token\_symbol              | VARCHAR           | Symbol of the token borrowed                                           |
| token\_decimals            | INTEGER           | Number of decimals of the token borrowed                               |
| raw\_amount\_str           | VARCHAR           | Raw amount of the token borrowed, in string to retain precision        |
| raw\_amount                | FLOAT             | Raw amount of the token borrowed                                       |
| amount\_str                | VARCHAR           | Normalised amount of the token borrowed, in string to retain precision |
| amount                     | FLOAT             | Normalised amount of the token borrowed                                |
| usd\_amount                | FLOAT             | USD amount of the token borrowed at the time of the transaction        |
| usd\_exchange\_rate        | FLOAT             | Hourly USD exchange rate of the token borrowed                         |
| extra\_fields              | VARIANT           | Extra fields from the event                                            |
| transaction\_hash          | VARCHAR           | Transaction hash of the event                                          |
| transaction\_index         | INTEGER           | Index of the transaction in the block                                  |
| transaction\_from\_address | VARCHAR           | Address of the sender of the transaction                               |
| transaction\_to\_address   | VARCHAR           | Address of the recipient of the transaction                            |
| log\_index                 | INTEGER           | Index of the log in the transaction                                    |
| topic0                     | VARCHAR           | Topic 0 of the event                                                   |
| block\_number              | INTEGER           | Block number of the event                                              |
| block\_timestamp           | TIMESTAMP\_NTZ(9) | Timestamp of the block                                                 |
| block\_hash                | VARCHAR           | Hash of the block                                                      |
| unique\_id                 | VARCHAR           | Unique ID of the event                                                 |
| \_created\_at              | TIMESTAMP\_NTZ(9) | Timestamp of when the event was created                                |
| \_updated\_at              | TIMESTAMP\_NTZ(9) | Timestamp of when the event was last updated                           |
