---
name: "SPI_fnumber"
section: "3"
platform: "linux"
package: "postgresql"
version: "18.6-4"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/SPI_fnumber"
---

# SPI\_fnumber(3)

determine the column number for the specified column name

## NAME

SPI\_fnumber - determine the column number for the specified column name

## SYNOPSIS

```
int SPI_fnumber(TupleDesc rowdesc, const char * colname)
```

## DESCRIPTION

**SPI\_fnumber** returns the column number for the column with the specified name.

If *colname* refers to a system column (e.g., ctid) then the appropriate negative column number will be returned. The caller should be careful to test the return value for exact equality to SPI\_ERROR\_NOATTRIBUTE to detect an error; testing the result for less than or equal to 0 is not correct unless system columns should be rejected.

## ARGUMENTS

TupleDesc *rowdesc*

input row description

const char \* *colname*

column name

## RETURN VALUE

Column number (count starts at 1 for user-defined columns), or SPI\_ERROR\_NOATTRIBUTE if the named column was not found.
