SQL UPPER
UPPER является аналогом LOWER (кто бы мог подумать?) — и это, вероятно, одна из самых интуитивно понятных функций SQL.
Использование функции UPPER для строкового значения вернет ввод в виде строки, состоящей из всех заглавных букв. Это эффективный способ создать ожидаемую капитализацию для определенных строковых значений в ваших данных.
Как использовать функцию SQL UPPER
Синтаксис для использования функции UPPER выглядит следующим образом:
upper(<string_column>)
Выполнение этой команды в операторе SELECT вернет строковое значение ввода в верхнем регистре. Вы также можете использовать функцию UPPER в предложениях WHERE и на значениях для соединения.
Ниже мы рассмотрим практический пример использования функции UPPER.
Пример использования функции SQL UPPER
Вы можете преобразовать в верхний регистр имя в модели customers
Jaffle Shop с помощью следующего кода:
select
customer_id,
upper(first_name) as first_name,
last_name
from {{ ref('customers') }}
После выполнения этого запроса таблица customers
будет выглядеть примерно так:
customer_id | first_name | last_name |
---|---|---|
1 | MICHAEL | P. |
2 | SHAWN | M. |
3 | KATHLEEN | P. |
Теперь все символы в first_name
в верхнем регистре (а last_name
остались без изменений).
Изменение строковых столбцов на верхний регистр для создания единообразия между источниками данных обычно происходит в стейджинговых моделях проекта dbt. Существует несколько причин для этого: очистка и стандартизация данных, такие как создание псевдонимов, приведение типов и преобразование в нижний или верхний регистр, должны происходить в стейджинговых моделях для создания единообразия и улучшения производительности на следующих этапах.
Синтаксис функции SQL UPPER в Snowflake, Databricks, BigQuery и Redshift
Google BigQuery, Amazon Redshift, Snowflake, Postgres и Databricks поддерживают функцию UPPER. Кроме того, синтаксис использования функции UPPER одинаков для всех них.
Примеры использования функции UPPER
Создавая единообразный формат капитализации (верхний или нижний регистр) для всех строковых значений в ваших моделях данных, вы создаете некоторые ожидания для бизнес-пользователей в вашем BI-инструменте.
- Преобразование кодов стран в верхний регистр в источниках данных для соответствия ожиданиям пользователей
- Создание единообразного формата капитализации для строковых значений в ваших моделях данных, также создавая ожидания для бизнес-пользователей в вашем BI-инструменте
Скорее всего, никогда не будет 100% согласованности в ваших моделях данных, но делая все возможное, чтобы уменьшить этот хаос, вы облегчите жизнь себе и вашим бизнес-пользователям. Используйте функцию UPPER, чтобы создать единообразный регистр для всех строк в ваших источниках данных.