Как определить максимально заданную длину поля в oracle?
Если Вам нужно задать переменную той же длины, то можно так:
sText TableName.ColumnName%Type;
Отслеживать
ответ дан 3 дек 2019 в 10:56
Вы не внимательно прочитали вопрос — не задать, а узнать длину.
3 дек 2019 в 11:22
в каком месте я задаю длину? цели определения длины могут быть разные, и, возможно, для какого-то круга задач это решение будет наиболее правильным
15 дек 2019 в 19:47
в каком месте я задаю длину? — вот здесь — задать переменную той же длины.
15 дек 2019 в 21:01
- sql
- oracle
- метаданные
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.3.2953
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
LEN (Transact-SQL)
Возвращает количество символов указанного строкового выражения, исключая конечные пробелы.
Получить число байтов, используемых для представления выражения, можно с помощью функции DATALENGTH.
Синтаксис
LEN ( string_expression )
Сведения о синтаксисе Transact-SQL для SQL Server 2014 (12.x) и более ранних версиях см . в документации по предыдущим версиям.
Аргументы
string_expression
Оцениваемое строковое выражение. Аргумент string_expression может быть константой, переменной или столбцом символьных или двоичных данных.
Типы возвращаемых данных
bigint, если expression имеет тип данных varchar(max), nvarchar(max) или varbinary(max); в противном случае int.
Если используются параметры сортировки SC, то возвращаемое целое значение рассматривает суррогатные пары Юникода UTF-16 как один символ. Дополнительные сведения см. в статье Collation and Unicode Support.
Замечания
Функция LEN исключает конечные пробелы. Если это может создать проблемы, рекомендуется использовать функцию DATALENGTH (Transact-SQL), которая не усекает строку. При обработке строки Юникода DATALENGTH возвращает число, которое, возможно, не будет равно количеству символов. В приведенном ниже примере демонстрируется работа функций LEN и DATALENGTH с конечным пробелом.
DECLARE @v1 VARCHAR(40), @v2 NVARCHAR(40); SELECT @v1 = 'Test of 22 characters ', @v2 = 'Test of 22 characters '; SELECT LEN(@v1) AS [VARCHAR LEN] , DATALENGTH(@v1) AS [VARCHAR DATALENGTH]; SELECT LEN(@v2) AS [NVARCHAR LEN], DATALENGTH(@v2) AS [NVARCHAR DATALENGTH];
Функция LEN возвращает количество символов, закодированных в определенное строковое выражение, а функция DATALENGTH — размер данных в байтах для определенного строкового выражения. Эти выходные данные могут быть разными в зависимости от типа данных и типа кодировки, используемой в столбце. Дополнительные сведения об отличиях типов кодировок, используемых для хранения данных, см. в статье Collation and Unicode Support (Поддержка параметров сортировки и Юникода).
Примеры
Следующий пример выбирает число символов и данные по имени людей FirstName , живущих в Australia . В примере используется база данных AdventureWorks.
SELECT LEN(FirstName) AS Length, FirstName, LastName FROM Sales.vIndividualCustomer WHERE CountryRegionName = 'Australia'; GO
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
В приведенном ниже примере возвращается число символов в столбце FirstName , а также первое и последнее имена сотрудников в Australia .
USE AdventureWorks2022 GO SELECT DISTINCT LEN(FirstName) AS FNameLength, FirstName, LastName FROM dbo.DimEmployee AS e INNER JOIN dbo.DimGeography AS g ON e.SalesTerritoryKey = g.SalesTerritoryKey WHERE EnglishCountryRegionName = 'Australia';
FNameLength FirstName LastName ----------- --------- --------------- 4 Lynn Tsoflias
Функция LENGTH
Функция LENGTH используется для подсчета количества символов в строках.
Синтаксис
SELECT LENGTH(поле) FROM имя_таблицы WHERE условие
Таблицы для примеров
| id айди |
name имя |
|---|---|
| 1 | Дмитрий |
| 2 | user6 |
| 3 | Владимир |
Пример
В данном примере при выборке из таблицы создается дополнительное поле, которое содержит длину поля name:
SELECT id, name, LENGTH(name) as length FROM users
Результат выполнения кода:
| id айди |
name имя |
length длина строки |
|---|---|---|
| 1 | Дмитрий | 4 |
| 2 | user6 | 4 |
| 3 | Владимир | 4 |
Пример
В данном примере с помощью условия WHERE выбираются только те записи, в которых длина поля name больше или равна 7 :
SELECT *, LENGTH(name) as length FROM users WHERE LENGTH(name)>=7
Результат выполнения кода:
| id айди |
name имя |
length длина строки |
|---|---|---|
| 1 | Дмитрий | 7 |
| 3 | Владимир | 8 |
Пример
Конечно, не обязательно делать поле length, чтобы применить функцию LENGTH в условии:
SELECT * FROM users WHERE LENGTH(name)>=7
Результат выполнения кода:
| id айди |
name имя |
|---|---|
| 1 | Дмитрий |
| 3 | Владимир |
Как узнать длину поля таблицы sql

Финансовая грамотность от А до Я
Данный курс в кратчайшие сроки обучит Вас финансовой грамотности. Эти знания позволят Вам получить, как минимум, серьёзную финансовую стабильность, а, как максимум, финансовую независимость.
В рамках курса даётся большое количество практических заданий, благодаря которым Вы не просто посмотрите курс, а действительно выполните ряд важнейших шагов, о которых в нём говорится.
Помимо самого курса Вас ждёт ещё бесплатный ценный Бонус: «Ранний выход на пенсию». В рамках этого Бонуса Вы узнаете, какой должен быть капитал конкретно в Вашем случае, варианты его получения, а также какие есть стратегии вывода капитала на пенсии и где их можно протестировать.
Уроки и статьи
Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.
![]()
Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.
![]()
Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.
![]()
Мой аккаунт Моя группа
Какая тема Вас интересует больше?
Бесплатный курс
33 шага к финансовой независимости
Данный курс представляет из себя чек-лист в PDF-формате с 33-мя последовательными шагами, пройдя которые Вы станете финансово независимым человеком. К этому чек-листу так же прилагается подробная видеоинструкция.
Чтобы получить Видеокурс,
заполните форму
Бесплатный онлайн-семинар
Как создать профессиональный Интернет-магазин
После семинара:
— Вы будете знать, как создать Интернет-магазин.
— Вы получите бесплатный подарок с подробным описанием каждого шага.
— Вы сможете уже приступить к созданию Интернет-магазина.