> For the complete documentation index, see [llms.txt](https://docs.postgresql.tw/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.postgresql.tw/15/client-interfaces/the-information-schema/routine_routine_usage.md).

# 37.42. routine\_routine\_usage

## 37.42. routine\_routine\_usage

The view `routine_routine_usage` identifies all functions or procedures that are used by another (or the same) function or procedure, either in the SQL body or in parameter default expressions. (This only works for unquoted SQL bodies, not quoted bodies or functions in other languages.) An entry is included here only if the used function is owned by a currently enabled role. (There is no such restriction on the using function.)

Note that the entries for both functions in the view refer to the “specific” name of the routine, even though the column names are used in a way that is inconsistent with other information schema views about routines. This is per SQL standard, although it is arguably a misdesign. See [Section 37.45](/15/client-interfaces/the-information-schema/36.40.-routines.md) for more information about specific names.

**Table 37.40. `routine_routine_usage` Columns**

| <p>Column Type</p><p>Description</p>                                                                                                                                                     |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p><code>specific\_catalog</code> <code>sql\_identifier</code></p><p>Name of the database containing the using function (always the current database)</p>                                |
| <p><code>specific\_schema</code> <code>sql\_identifier</code></p><p>Name of the schema containing the using function</p>                                                                 |
| <p><code>specific\_name</code> <code>sql\_identifier</code></p><p>The “specific name” of the using function.</p>                                                                         |
| <p><code>routine\_catalog</code> <code>sql\_identifier</code></p><p>Name of the database that contains the function that is used by the first function (always the current database)</p> |
| <p><code>routine\_schema</code> <code>sql\_identifier</code></p><p>Name of the schema that contains the function that is used by the first function</p>                                  |
| <p><code>routine\_name</code> <code>sql\_identifier</code></p><p>The “specific name” of the function that is used by the first function.</p>                                             |

***

原文：[PostgreSQL 15.19 Documentation](/15/client-interfaces/the-information-schema/routine_routine_usage.md)（英文原文，待翻譯）


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.postgresql.tw/15/client-interfaces/the-information-schema/routine_routine_usage.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
