Как извлечь определенный n-й символ из строки в SQL

У меня есть поле, которое возвращает значение как xxx-xxx-xxx-xxxxx-xx-x. Как извлечь 10-й символ из этого кода.

 select substring('xxx-xxx-xxx-xxxxx-xx-x', 10, 1) 

Документация для функции в MSDN находится здесь .

Демо-версия SQL Fiddle находится здесь (с разными буквами, чтобы вы могли четко видеть, какая буква извлекается).

Использовать функцию substring

выберите подстроку ('xxx-xxx-xax-xxxxx-xx-x', 10, 1)

вы можете использовать SUBSTRING , в вашем случае использовать …

 SELECT SUBSTRING(field, 10, 1) 

поле , которое возвращает значение.

 declare @x varchar(20) = 'xxx-xxx-xxx-xxxxx-xx-x' select SUBSTRING(@x,10,CHARINDEX('-',@x)-4 ) 
Interesting Posts

Можно использовать временную таблицу в CTE?

Запуск умножения в T-SQL

Сброс Запуск Всего на основе другого столбца

Каков наилучший способ хранения строки подключения в .NET DLL?

Просмотреть все ресурсы безопасности для ролей в базе данных SQL Server?

План обслуживания SQL Server для кулаков 10 дней в месяце

«Добавление значения в столбец« datetime »вызвало переполнение».

SQL Server заблокировал доступ к процедуре «sys.sp_OACreate» компонента «Процедуры автоматизации Ole»

Экспорт таблицы SQL в CSV с пользовательским заголовком (изменение имени заголовка)

Удаление недопустимых данных FK после массовой загрузки

SQL – объединение данных фактов и измерений в диапазонах дат

Конфигурация поставщика инфраструктуры Entity Framework

Можно ли использовать столбец XML для хранения дополнительных данных?

Есть ли способ изменить разрешения для всех таблиц в базе данных SQL-сервера сразу?

SQL-получение данных из двух таблиц в разных столбцах без использования объединений

Давайте будем гением компьютера.