Вы можете использовать функцию LEN (), чтобы найти длину строкового значения в SQL Server, например, LEN (emp_name) даст вам длину, хранящуюся в строке emp_name . Помните, что это отличается от длины фактической длины, которую вы указали при создании таблицы, например emp_name VARCHAR (60) . Вам пример, у вас есть столбец под названием emp_name VARCHAR (60), это означает, что длина этой колонки 60 символов, он может содержать имена с максимум 60 символов длиной, но не все имена 60 символов. На этом уроке SQL Server, я научу вас как использовать функцию LEN() в SQL, чтобы выяснить фактическую длину или количество символов в VARCHAR или поле CHAR.
Если вы хотите узнать все имена, которые меньше, чем 10 символов, вы можете использовать функцию LEN(), как следующий запрос SQL:
SELECT emp_name from Employee where LEN(emp_name) < 10
В данном примере возвратит всех сотрудников, имя которого меньше, чем 10 символов. Функция LEN() является очень полезной, она принимает имя столбца и возвращает длину строки.
Давайте посмотрим еще пару примеров функции LEN () в SQL Server 2008 и 2014:
1) Написать запрос SQL, чтобы узнать всех сотрудников, чье имя больше, чем 10 символов, но менее 50 символов
SELECT name from Employee where LEN(name) > 10 and LEN(name) < 50
Можно также применить условную логику с помощью CASE сделать требуемое, основанное на различной длине, например, вы можете сократить длинное название с добавлением “…” в конце строки.
SELECT CASE WHEN LEN (emp_name) <= 50 THEN emp_name ELSE LEFT(emp_name, 60) + '...' END As emp_name FROM Employee
Поэтому не забывайте используя функцию LEN () в SQL Server, вы узнаете длину любой строки, хранящейся в колонке VARCHAR. Он не должен быть VARCHAR, но функция LEN() принимает текстовое значение, которое означает, что он может быть CHAR, VARCHAR, NCHAR или NVARCHAR.