# upper

> For the complete documentation index, see [llms.txt](https://docs.redpanda.com/llms.txt). Component-specific: [cloud-data-platform-full.txt](https://docs.redpanda.com/cloud-data-platform-full.txt)

---
title: upper
latest-operator-version: v26.1.4
latest-console-tag: v3.7.3
latest-connect-version: 4.93.0
latest-redpanda-tag: v26.1.9
docname: sql/sql-functions/string-functions/upper
page-component-name: cloud-data-platform
page-version: master
page-component-version: master
page-component-title: Cloud
page-relative-src-path: sql/sql-functions/string-functions/upper.adoc
page-edit-url: https://github.com/redpanda-data/cloud-docs/edit/main/modules/reference/pages/sql/sql-functions/string-functions/upper.adoc
description: The `upper()` function returns a given string, an expression, or values in a column in all uppercase letters.
page-topic-type: reference
page-git-created-date: "2026-05-26"
page-git-modified-date: "2026-05-26"
---

<!-- Source: https://docs.redpanda.com/cloud-data-platform/reference/sql/sql-functions/string-functions/upper.md -->

The `upper()` function returns a given string, an expression, or values in a column in all uppercase letters:

```sql
UPPER(string)
```

It accepts input as a string and returns text in uppercase letters.

**Special Case:**

-   If characters in the input are not of type string, they remain unaffected by the `upper()` function.

-   Unicode is supported for the `upper()` function.


## [](#examples)Examples

### [](#basic-upper-function)Basic `upper()` function

This basic query converts the given string to all uppercase letters:

```sql
SELECT UPPER('PostGreSQL');
```

The query returns:

```sql
+-------------+
| upper       |
+-------------+
| POSTGRESQL  |
+-------------+
```

### [](#upper-function-using-columns-and-concat-function)`upper()` function using columns and `concat()` function

This example shows how the `upper()` function works with columns. A table named **personal\_details** contains employee’s **id**, **first\_name**, **last\_name**, and **gender** of a retail store:

```sql
CREATE TABLE personal_details (
  id int,
  first_name text,
  last_name text,
  gender text
);
INSERT INTO personal_details
    (id, first_name, last_name, gender)
VALUES
    (1,'Mark','Wheeler','M'),
    (2,'Tom','Hanks','M'),
    (3,'Jane','Hopper','F'),
    (4,'Emily','Byers','F'),
    (5,'Lucas','Sinclair','M');
```

```sql
SELECT * FROM personal_details;
```

The query returns:

```sql
+-----+-------------+-------------+----------+
| id  | first_name  | last_name   | gender   |
+-----+-------------+-------------+----------+
| 1   | Mark        | Wheeler     | M        |
| 2   | Tom         | Hanks       | M        |
| 3   | Jane        | Hopper      | F        |
| 4   | Emily       | Byers       | F        |
| 5   | Lucas       | Sinclair    | M        |
+-----+-------------+-------------+----------+
```

Assume that:

1.  The goal is to convert employees' first and last names with **id** numbers 1, 3, and 5 to all uppercase letters.

2.  Then, combine them using the `concat()` function into one **full\_name** column in uppercase.

    Use this query:

    ```sql
    SELECT CONCAT (UPPER(first_name),' ', UPPER(last_name))
    as full_name
    FROM personal_details
    where id in (1, 3, 5);
    ```

    The output displays the first and last names of employees with the specified ids in uppercase letters:

    ```sql
    +---------------------+
    | full_name           |
    +---------------------+
    | MARK WHEELER        |
    | JANE HOPPER         |
    | LUCAS SINCLAIR      |
    +---------------------+
    ```